Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2008.09.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.006 c
2-1217144058
krem
2008-07-27 11:34
2008.09.07
динамический массив


2-1217336935
acme1o
2008-07-29 17:08
2008.09.07
Сокрытие меню чужого приложения


1-1198089818
lookin
2007-12-19 21:43
2008.09.07
Создание-удаление диалога


3-1205271880
GanibalLector
2008-03-12 00:44
2008.09.07
backup/restore Firebird


2-1217251593
alex-drob
2008-07-28 17:26
2008.09.07
Выборка из таблицы по дате





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский