[ davidbowman @ 02.09.2008. 19:54 ] @
Kako da selektujem rekord u kome se u dve kolone istovremeno neka vrednost javlja vise puta. Evo konkretnog primera, npr imam ovakvu tabelu:

Code:

ID ...  kolona2      ...    kolona5
------------------------------------
1        100                 2000
2        200                 2500
3        220                 2550
4        220                 2570
5        300                 2600
6        300                 2600
7        400                 2600
8        500                 3000
9        500                 3000
10       500                 3000
11       700                 4000
12       600                 3000
13       800                 4000
14       600                 2550


Treba mi upit koji ce da mi vrati rekorde 5,6,8,9,10. U rekordima 5 i 6 kolona2=300, kolona5=2600, a u rekordima 8,9,10 kolona2=500, kolona5=3000, nadam se da razumete sta hocu. Napravio sam sledeci upit:

Code:

select ID, ...

from tabela

where kolona2 in (select kolona2

                  from tabela

                  group by kolona2
 
                  having count(kolona2) > 1) and kolona5 in (select kolona5

                                                             from tabela

                                                             group by kolona5
 
                                                             having count(kolona5) > 1)


Medjutim ovaj upit mi vraca rekorde 3,5,6,8,9,10,12,14 tj vraca i rekorde 3,12,14. Znam da ih vraca zbog ponavljanja vrednosti, ali u tim rekordima se vrednosti ne ponavljaju istovremeno u obe kolone. Moje pitanje je kako da napravim upit koji ce da vrati rekorde u kojima se vrednosti u ove dve kolone istovremeno ponavljaju? Veliko hvala unapred.
[ jablan @ 02.09.2008. 21:05 ] @
Code:
GROUP BY kolona2, kolona5 HAVING COUNT(*) > 1
[ davidbowman @ 02.09.2008. 21:11 ] @
Hvala jablane, probacu cim ujutru dodjem na posao.