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

Форум MySQL

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

 

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

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

тема: Не получается решить с выборкой
 
 автор: Shorr Kan   (11.11.2005 в 15:57)   письмо автору
 
 

Есть таблица. Из нее надо пройтись только по тем записям, где столбец G - встречается только один раз. Поясняю

id | G | date

1 aaa 10-10-2005
2 bbb 09-10-2005
3 aaa 11-10-2005
3 ccc 10-10-2005

Нужны только bbb и ccc .

   
 
 автор: Shorr Kan   (11.11.2005 в 18:10)   письмо автору
 
   для: Shorr Kan   (11.11.2005 в 15:57)
 

Никто не знает?

   
 
 автор: Shorr Kan   (11.11.2005 в 18:58)   письмо автору
 
   для: Shorr Kan   (11.11.2005 в 18:10)
 

Нет, в самом деле, тут мне нужна помощь. Только там, в первом сообщении - я допустил ошибку. id - автоинкремент, т.е., там не 3 и 3, а 3 и 4 в конце. Но суть не в этом. Суть в выборке. На столбец id можно не обращать внимания.

   
 
 автор: cheops   (11.11.2005 в 23:49)   письмо автору
 
   для: Shorr Kan   (11.11.2005 в 15:57)
 

Это запрос на группировку с групповым условием
SELECT id, date, COUNT(G) FROM tbl
GROUP BY G
HAVING COUNT(G) = 1

   
 
 автор: Shorr Kan   (12.11.2005 в 02:37)   письмо автору
 
   для: cheops   (11.11.2005 в 23:49)
 

Таак... а каким образом можно скопировать все такие строки... ну просто продублировать... установив date в NOW() ? Просто циклом пройтись? Или есть какой-то запрос?

   
 
 автор: cheops   (12.11.2005 в 11:44)   письмо автору
 
   для: Shorr Kan   (12.11.2005 в 02:37)
 

А в смысле продублировать в эту же таблицу? Можно воспользоваться оператором INSERT INTO ... SELECT
INSERT INTO tbl
SELECT id, COUNT(G), NOW() FROM tbl 
GROUP BY G 
HAVING COUNT(G) = 1

   
Rambler's Top100
вверх

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