Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.03.27;
Скачать: CL | DM;

Вниз

Выбрать записи с одинаковыми значениями полей   Найти похожие ветки 

 
PKT   (2005-02-24 05:31) [0]

Задачка:
Выбрать записи, у которых:
((поле1=Величина1) и (значения полей2 равны))
+ (OR)
(поле1=Величина2),
отсортировать по полю1

Первая половина задачки худо-бедно решается:
select ...... from Base A, Base B where
(
 (A.Поле1 = Величина 1) and
 (A.Поле2 = B.Поле2) and (A.УникальноеПоле <> B.УникальноеПоле)
)
order by A.Поле1

Вся задачка тоже решается
select ...... from Base A, Base B where
(
 (A.Поле1 = Величина 1) and
 (A.Поле2 = B.Поле2) and (A.УникальноеПоле <> B.УникальноеПоле)
)
or
 (A.Поле1=Величина2 and B.Поле1=Величина2)
order by A.Поле1

но тормозит капитально.

База совсем небольшая (около 1000), выборка – записей 20. Понимаю, мое решение
явно «в лоб», может быть можно как-то поизящней ?

Распространенный вариант для поиска двойных записей
select Поле2, count(Поле2) from Base
group by Поле2 having count(Поле2) > 1
как-то не смог использовать из-за второй части задачки.


 
Johnmen ©   (2005-02-24 09:07) [1]

http://www.ibase.ru/devinfo/deldupes.htm



Страницы: 1 вся ветка

Текущий архив: 2005.03.27;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.039 c
6-1106596247
GmPr
2005-01-24 22:50
2005.03.27
Первые шаги в программировании сетей


3-1109015757
Walentina
2005-02-21 22:55
2005.03.27
sum(x)= - 6.67761414550082E153, а должно быть 0!


14-1109949577
аноним_
2005-03-04 18:19
2005.03.27
Вопрос по javascript


1-1110709722
NEW_USER
2005-03-13 13:28
2005.03.27
Как перевести TWEBbrouser в онлайн?


14-1110154946
АНТИспаммер
2005-03-07 03:22
2005.03.27
Какими Вы видите компьютеры и ОС лет через 10 ?