Autor | Zpráva | ||
---|---|---|---|
vrchni Profil * |
#1 · Zasláno: 4. 1. 2014, 12:33:54
Dobrý den,
už nějakou hodku se perou a nevyhrávám. Chci docílit toho, že v dotazu se bude zjišťovat zda jsou v jiném účtu stejná data. Pokud najde třeba i jen 2 shody, tak aby vypsal 1. Takhle jak to mám mi to vypusuje 2 i když neexistuje shoda. Moc prosím, kde dělám chybu? Dˇ $ob = mysql_result(mysql_query("SELECT COUNT(uz.id) FROM user us LEFT JOIN user uz ON us.id = uz.id WHERE us.account='user' AND uz.account='block' AND us.id=uz.id OR us.contact=uz.contact OR us.os=uz.os"),0); |
||
Tori Profil |
#2 · Zasláno: 4. 1. 2014, 12:54:04
A opravdu chcete porovnávat shody mezi účty se stejným ID, anebo hledáte shody mezi jakýmkoli účtem z us a jakýmkoli (i jiným) z uz?
|
||
vrchni Profil * |
#3 · Zasláno: 4. 1. 2014, 12:59:11
Jde mi o to, ze ten dotaz ma zjistit zda je jiny ucet se shodnymi daty. Je to kvůli detekci obchazení zákazu. Dotaz se tím komplikuje protoze mi jde i o jednu shodu a vic. Pokud najde dva jine ucty (id: 1, id:2) tak vypíše 2 shody. Má tedy zjistovat zda jsou jine ucty s totoznými daty.
|
||
Tori Profil |
#4 · Zasláno: 4. 1. 2014, 13:05:07
Tak potom spíš něco jako:
SELECT us.id, uz.id as duplicita FROM `user` us INNER JOIN `user` uz ON uz.account = 'block' AND (us.id = uz.id OR us.contact = uz.contact OR us.os = uz.os) WHERE us.account = 'user' GROUP BY us.id, uz.id |
||
vrchni Profil * |
#5 · Zasláno: 4. 1. 2014, 13:16:18
Bomba, ono to vážně maká :-)
Moc děkuju ani ve snu mě nenapadlo, že mi někdo poradí tak rychle a dobře. Fakt, jste dobrej. Velké děkuji a to myslím upřímně. Sámotnýho by mě to takhle sestavit nenapadlo |
||
Časová prodleva: 10 let
|
0