Zadejte hledaný výraz...

Odstranění duplicit z SQL dotazu

Luděk Kvapil
verified
rating uzivatele
27. 5. 2016 11:13:57
Potřeboval bych poradit, jak na odstranění duplicity, která vlastně aní není duplicita.
product_id;seller_id;scrap_id;position
1; 5126; 6; 1
1; 20969 ;6; 2
1; 5527; 6; 3
1; 43594; 6; 4
1; 5126 ;6; 13
1; 20969 ;6; 5
1; 25244; 6; 6
1; 5527; 6; 7
1 1;8055; 6; 8
1; 4281; 6; 14
1; 17631; 6; 11
1 ;39676; 6 ;12
1; 54480; 6; 9
1; 56745; 6; 10
2; 5126 ;6; 1
2; 17631 ;6; 2
2; 20969 ;6; 3
2; 17631 ;6; 4
2; 5126; 6; 13
2; 20969 ;6; 5
2; 25244; 6; 6
2; 45386; 6; 7
2; 5527; 6; 8
2; 18055; 6; 9
2; 4281; 6; 15
2; 43594; 6; 14
2; 39676; 6; 12
2; 54480; 6; 10
2; 56745; 6; 11
Dotaz:
Výsledkem je seznam produktů a pozice eshopu v detailu produktu na Heurece. Jenže v detailu může být prodejce 2x. Jednou na aukční pozici a pak ještě na "organické". Jak to mám udělat, aby tam byl jen 1x? Ona to sice není skutečná duplicita, ale v reportu to jako duplicita působí...
Ideální by bylo, kdyby p.seller_id mělo pravidlo, že pakliže je u p.product_id 2x, tak se vezme záznam, kde je hodnota position menší. Jen nevím, jak napsat tu IF podmínku do SQL.
---------- Příspěvek doplněn 27.05.2016 v 11:20 ----------
PS: používám MySQL
27. 5. 2016 11:13:57
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198614
Adam
verified
rating uzivatele
(6 hodnocení)
27. 5. 2016 11:41:45
SQL Distinct Keyword
27. 5. 2016 11:41:45
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198613
Luděk Kvapil
verified
rating uzivatele
27. 5. 2016 12:10:56
DISTINCT na to nezabírá. Ono to není duplicitní. seller_id může mít dvě různé position pro stejný produkt...
27. 5. 2016 12:10:56
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198612
Adam
verified
rating uzivatele
(6 hodnocení)
27. 5. 2016 12:25:26
Tak potom pro slozitejsi logiku pouzit proceduru.
27. 5. 2016 12:25:26
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198611
Luděk Kvapil
verified
rating uzivatele
27. 5. 2016 12:31:31
Už to funguje.. Pomohlo to narvat do skupin..
27. 5. 2016 12:31:31
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198610
MatesM
verified
rating uzivatele
27. 5. 2016 14:06:14
No jenom si dejte pozor, že takto
tam nebudete mít tu nejmenší hodnotu u té position, ale první která se vyskytne. Teoreticky by mělo stačit do toho dotazu si dát něco takového
27. 5. 2016 14:06:14
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198609
Luděk Kvapil
verified
rating uzivatele
27. 5. 2016 15:33:22
Napsal MatesM;1295134
tam nebudete mít tu nejmenší hodnotu u té position, ale první která se vyskytne. Teoreticky by mělo stačit do toho dotazu si dát něco takového
min() jsem zkoušel, ale to nefunguje, protože je to agregační hodnota a ostatní data agregovaná nemám... Mám to seřazené dle té pozice, takže ta menší je vždy první
27. 5. 2016 15:33:22
https://webtrh.cz/diskuse/odstraneni-duplicit-z-sql-dotazu#reply1198608
Pro odpověď se přihlašte.
Přihlásit