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

Вниз

Повторяющиеся значения поля   Найти похожие ветки 

 
rebroff   (2008-03-12 13:54) [0]

Нужно выбрать строки таблицы А, в которых совпадают значения поля F2,но разные значения поля F1.
Пример:
F1 | F2
-----------
100 | 200
112 | 200


 
Сергей М. ©   (2008-03-12 14:00) [1]

select F1, F2, count(F2)
from A
order by F2
group by F2
having count(F2) > 1


 
Sergey13 ©   (2008-03-12 14:02) [2]

select f2,count(*)
from table
group by f2
having count(*)>1


 
rebroff   (2008-03-12 14:05) [3]

а как быть с записями, у которых равны и f1 и f2? Их выбирать не нужно.


 
Сергей М. ©   (2008-03-12 14:10) [4]

select ..from .. where F1<>F2 .. и т.д.


 
rebroff   (2008-03-12 14:12) [5]

Не значения полей между собой, а значения полей в разных записях.
f1 в одной записи равно f1 - в другой. Такие строки не выбираются.


 
rebroff   (2008-03-12 14:15) [6]

Т.е. значения f2 в разных записях равны, а значения f1 - нет.
Например:
111   Вася
222   Вася
------------
Такие выбираем

А такие-нет:
444   Петя
444   Петя


 
Сергей М. ©   (2008-03-12 14:18) [7]

см. по аналогии с [1]
по полю F1 добавляешь сч-к, группировку и доп.условие отбора по сч-ку в HAVING-выражении


 
rebroff   (2008-03-12 14:22) [8]


select

a.tin,a.c_sti_main, a.adr_ns, b.d_reg_sti, count(a.adr_ns), count(a.tin)

from r21paddr a, r21taxpay b

where a.tin=b.tin

group by  a.tin,a.adr_ns,a.c_sti_main,b.d_reg_sti

having count(a.adr_ns)>1 and count(a.tin)=1


Вернул 0 строк :((


 
Сергей М. ©   (2008-03-12 14:27) [9]

select F1, F2, count(F2), count(F1)
from A
group by F2, F1
having count(F2)>1 and count(F1)=1


 
rebroff   (2008-03-12 14:31) [10]


select a.tin,a.c_sti_main, a.adr_ns,b.d_reg_sti,count(a.adr_ns),count(a.tin)
from r21paddr a,r21taxpay b
where a.tin=b.tin
group by  a.adr_ns,a.tin,a.c_sti_main,b.d_reg_sti
having count(a.adr_ns)>1 and count(a.tin)=1

та же петрушка...
0 строк


 
Сергей М. ©   (2008-03-12 14:34) [11]

А если из версии [10] убрать

and count(a.tin)=1

то тоже 0 ?


 
rebroff   (2008-03-12 14:36) [12]

Это в смысле "а был ли мальчик?":)
Нет, не 0.


 
Сергей М. ©   (2008-03-12 14:37) [13]


> не 0.
>


А что видишь ?

Приведи фрагмент реального набора и выдели строки, которые не должны были в него попасть


 
Сергей М. ©   (2008-03-12 14:38) [14]

И СУБД какая ?


 
rebroff   (2008-03-12 14:43) [15]

TIN                  ADR_NS                            D_REG_CSTI
-----------------------------------------------------------------
25810001          ул. Кирова.......                 28.01.2002
25810001          ул. Кирова......                  01.05.2004

Эти строки не должны были попасть в выборку, т.к. TIN одинаковый.


 
sniknik ©   (2008-03-12 14:45) [16]

> в которых совпадают значения поля F2,но разные значения поля F1.
> Пример:
> F1 | F2
> -----------
> 100 | 200
> 112 | 200
SELECT DISTINCT F1, F2 FROM Table WHERE F2=200


 
rebroff   (2008-03-12 14:46) [17]

ORACLE 9i
Запрос набираю в Нафигаторе.


 
Сергей М. ©   (2008-03-12 14:48) [18]


> rebroff   (12.03.08 14:43) [15]


А где в этом фрагменте поля счетчиков ?


 
rebroff   (2008-03-12 14:52) [19]

TIN              ADR_NS              D_REG_CSTI    COUNT(a.adr_ns)   COUNT(a.tin)----------------------------------------------------------------------------
25810001      ул. Кирова.......   28.01.2002             48                    48
25810001      ул. Кирова......    01.05.2004             12                    12


 
Сергей М. ©   (2008-03-12 14:58) [20]

И это соответствует действительности ?


 
rebroff   (2008-03-12 15:01) [21]

Нет, на самом деле таких записей - 14.


 
Johnmen ©   (2008-03-12 15:03) [22]


> rebroff   (12.03.08 14:43) [15]
> Эти строки не должны были попасть в выборку,
>  т.к. TIN одинаковый.

По какому критерию определяется попадающая строка?


 
Сергей М. ©   (2008-03-12 15:08) [23]


> на самом деле таких записей - 14.


Каких "таких" ?

Я о сравнении рез-тов группирующего запроса с результатами "обычного" ..


 
Сергей М. ©   (2008-03-12 15:34) [24]

Какая из используемых таблиц имеет первичное ключевое поле ?



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

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

Наверх




Память: 0.51 MB
Время: 0.011 c
15-1216364300
shlst
2008-07-18 10:58
2008.09.07
Касперски против Intel!


2-1217408913
денис_м
2008-07-30 13:08
2008.09.07
Настройки в программе


9-1173525818
Домик
2007-03-10 14:23
2008.09.07
Как узнать кол-во занятой видеопамяти?


9-1174296930
КувалдаСофт
2007-03-19 12:35
2008.09.07
Задачка с интерфейсами


2-1217246736
Vincent
2008-07-28 16:05
2008.09.07
Помогите с кодом