Поисковая форма:) поиск по free-lance.ru Топ/история/обновления фриланса, по разным параметрам (темы, сообщения, пользователи...) Автоматическое удаление постов от ненужных юзеров в топике (php скрипт) Досье(точный ник)
 

Ник (или часть ника):
?
Какой текст ищем:
?
Раздел блогов:
За срок
дней
Тип поиска: (по вхождению: по тексту гуг выдаст посты с "гуг", "гугл", "огугл"; "полнотекстовый": по тексту "гуг" выдаст посты только с "гуг")
По вхождению строки:  Полнотекстовый: 
(поиск не 100% актуальный, есть определённая задержка при обновлении данных для поиска. )
0 Всего найдено: 14
FIXXER Сообщение 27/07/2011 12:58 Копия темы
Подскажите sql-запрос Выбрать id всех строк с неуникальными date
pompage Сообщение 27/07/2011 13:01 Копия темы
Дубли что-ли найти?Структура таблицы какая?id уникально.
pavelyrv Сообщение 27/07/2011 13:06 Копия темы
на вскидку:
select *
from (
select `date`,count(1) as c from sometable group by `date`) T1
join sometable T2 ON T1.`date` = T2.`date`
where c>1
FIXXER Сообщение 27/07/2011 13:06 Копия темы
да, id уникальны, нужно найти дубли строк
FIXXER Сообщение 27/07/2011 13:09 Копия темы
чо то как то черезчур кучеряво,  не?
clockworkbird Сообщение 27/07/2011 13:23 Копия темы
навскидку – выбираешь все уникальные и затем выбираешь все записи которые не входят в подзапрос.
хотя, наверное, можно и красивее решить.
FIXXER Сообщение 27/07/2011 13:27 Копия темы
Уникальные вроде DISTINCT 
Может SELECT UNDISTINCT =)))
pompage Сообщение 27/07/2011 13:30 Копия темы
select *
from TEST_DUPLICATE
where value in (
  select value
  from TEST_DUPLICATE
  group by value
  having count(*) > 1

)
order by value;


value это твоя дата.
clockworkbird Сообщение 27/07/2011 13:35 Копия темы
Ну или так. С подзапросом, в общем.
FIXXER Сообщение 27/07/2011 13:45 Копия темы
Что он у меня на второй вложенный select ругается...
pompage Сообщение 27/07/2011 14:32 Копия темы
Нужна структура Вашей таблички  и запрос который вы написали.
TweeKane Сообщение 28/07/2011 06:36 Копия темы
SELECT id FROM test WHERE 
  date  in (SELECT date FROM test 
           GROUP BY date
           HAVING count(date) > 1)
pavelyrv Сообщение 28/07/2011 08:38 Копия темы
конечно кучеряво, это же навскидку – поток сознания:)
resurection Сообщение 28/07/2011 14:58 Копия темы
Ещё один поток сознания:

dates := (SELECT `date`, FROM `tbl` WHERE COUNT(*) > 1 GROUP BY `date`); // Получает массив не уникальных дат
SELECT `id` FROM `tbl` WHERE `date` IN dates; // Выбирает все записи с не уникальными датами.

Не проверял, как это работает, но логика, я надеюсь, понятна.

Ещё можно вот так переписать:
SELECT `id` FROM `tbl` WHERE `date` IN (SELECT `date`, FROM `tbl` WHERE COUNT(*) > 1 GROUP BY `date`); 

Кажется будто тоже самое, но выполнятся будет на несколько порядков дольше.
0

©2008 edogs egods
Выразить восторг, поругаться
или предложить что-нибудь можно на форуме
Для обсуждения этого сервиса так же есть темы на фрилансе по
поиску , флудотопу ,и по удалённым сообщениям ,и по Актуальным/популярным темам , и по топу "кто кому больше наотвечал"