Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: INSERT SELECT портит PRIMARY KEY
 
 автор: Eugene77   (11.01.2008 в 13:55)   письмо автору
 
 

Хочу из одной таблицы(def) перетащить в другую(regions) одну из колонок(region), указывая в другой из колонок(times), сколько раз в первой таблице повторяется перетаскиваемое значение

INSERT regions(region)
SELECT
region
FROM def
ON DUPLICATE KEY UPDATE
times = times + 1

Вроде бы даже работает, но почему-то PRIMARY KEY получается не попорядку, а с нерегулярным
крупным шагом(первая колонка):

1 Воронежская область 75
3 Псковская область 39
12 Мурманская область 43
22 Самарская область 123
25 Волгоградская область 77
28 Новосибирская область 65
29 Ростовская область 121

Как это вылечить?
И в чём болезнь?

   
 
 автор: Trianon   (11.01.2008 в 21:04)   письмо автору
 
   для: Eugene77   (11.01.2008 в 13:55)
 

По-человечески это звучит так:


INSERT INTO regions (region, times) 
  SELECT region, COUNT(region) FROM def GROUP BY region ORDER BY region

   
 
 автор: Eugene77   (12.01.2008 в 15:30)   письмо автору
 
   для: Trianon   (11.01.2008 в 21:04)
 

Да уж...
Чувствуется рука профессионала!
Сделаю себе плакат на стену с этим запросом.
Спасибо!

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования