Autor | Zpráva | ||
---|---|---|---|
slon_cz Profil |
#1 · Zasláno: 19. 7. 2018, 17:48:45
Zdravím, obracím se na Vás opět o žádost o radu. Vypisuji z databáze uživatele, ovšem potřeboval bych, zda existuje nějaká podmínka, která by mi vypsala jen uživatele, kteří mají v poli ip_adresa, pole1, pole2, pole3 stejný obsah. Respektive aby mi to vypsalo uživatele, co mají třeba stejný obsah v poli ip_adresa, ale zároveň i uživatele, co mají ip adresu jinou, ale shodují se například v poli email, snad jsem to vysvětlil dostatečně, nenapadá mě totiž, jak by toto šlo kontrolovat a vypisovat na úrovni sql příkazu.
|
||
Radek9 Profil |
#2 · Zasláno: 19. 7. 2018, 18:02:14
Asi pořád úplně nechápu, co vlastně chceš. Můžeš dát nějaký konkrétní příklad na datech?
|
||
slon_cz Profil |
#3 · Zasláno: 19. 7. 2018, 18:29:17
nickname | email | ip | pole1 | pole2 | id
test1 |at@f.c | 78 | 12 | auto | 1 test2 |at@f.c | 12 | 17 | kolo | 2 test3 |t@f.g | 78 | 14 | auto | 3 test4 |ae@f.c | 78 | 10 | auto | 4 a sql příkaz vypíše sloupky s id 1/3/4 protože se shodují s polem pole2 a nebo s polem email, prostě vypsat duplikáty. |
||
Keeehi Profil |
#4 · Zasláno: 19. 7. 2018, 18:32:19
SELECT * FROM users WHERE ip_address IN ( SELECT ip_address FROM users GROUP BY ip_address HAVING COUNT(*) > 1 ) OR column_1 IN ( SELECT column_1 FROM users GROUP BY column_1 HAVING COUNT(*) > 1 ) OR column_2 IN ( SELECT column_2 FROM users GROUP BY column_2 HAVING COUNT(*) > 1 ) |
||
slon_cz Profil |
#5 · Zasláno: 19. 7. 2018, 18:54:42
To je přesně ono, co potřebuji, děkuji! Je možnost tam přidat, aby to nebralo pole, pokud je prázdné nebo NULL? Děkuji
|
||
Keeehi Profil |
#6 · Zasláno: 19. 7. 2018, 19:42:24
Samozřejmě, stačí přidat WHERE
SELECT ip_address FROM users WHERE ip_address IS NOT NULL AND ip_address != '' GROUP BY ip_address HAVING COUNT(*) > 1 |
||
slon_cz Profil |
#7 · Zasláno: 20. 7. 2018, 11:34:51
Děkuji, nevěděl jsem kam přesně ten řetězec s podmínkou přidat.
|
||
Časová prodleva: 6 let
|
0