Autor | Zpráva | ||
---|---|---|---|
karbon Profil * |
#1 · Zasláno: 9. 7. 2008, 17:53:51
Mám tabulku, ve které jsou 2 sloupce - nazev a odkaz. Podle odkazu se data slučují do skupin a já bych potřeboval zjistit, zda existuje skupina s prvky, které se rovnají určitým hodnotám. Např. budu mít slova "stůl" a "lavice" a chci najít (a popř. vypsat) skupinu, která tyto prvky obsahuje. Je vůbec taková architektura tabulky na toto vhodná?
|
||
havs Profil |
#2 · Zasláno: 9. 7. 2008, 19:31:25
A vybrat to prohledáním?
$vysledek = mysql_query("SELECT * FROM `$tb` WHERE `sloupec` LIKE '%stůl%' OR `sloupec` LIKE '%lavice%'"); |
||
karbon Profil * |
#3 · Zasláno: 9. 7. 2008, 20:08:21
havs
Tento příkaz sice má nějakou funkci, ale není úplně to, co jsem čekal. Já potřebuji vybrat název skupiny, která obsahuje všechny hledané prvky, ne pouze určitý z nich. Kdybych ale použil AND, nedostal bych z databáze nic, protože každé hledané slovo je vráceno v samostatném řádku. |
||
Kajman_ Profil * |
#4 · Zasláno: 9. 7. 2008, 22:53:02 · Upravil/a: Moderátor (editace znemožněna) 20. 2. 2012, 15:57:32
např.
select skupina where prvek in ('stul','lavice') group by skupina having count(distinct prvek)=2 |
||
karbon Profil * |
#5 · Zasláno: 9. 7. 2008, 23:05:34
Kajman_
Děkuji, funguje skvěle! Jen by mě zajímalo, jaký vliv má konec dotazu having count(distinct prvek)=2. |
||
ninja Profil |
#6 · Zasláno: 9. 7. 2008, 23:10:11
karbon: Jen by mě zajímalo, jaký vliv má konec dotazu having count(distinct prvek)=2
Omezi vysledek pouze na ty, kde byly nalezeny 2 rozdilne hodny ve sloupci prvek. Jinak by vam i vice vysledku, napriklad skupinu kde je vicekrat stul, ale ani jednou lavice. |
||
Kajman_ Profil * |
#7 · Zasláno: 9. 7. 2008, 23:12:34
Přesně tak. Pokud budete rozšiřovat tu závorku hodnot, které hledáte, tak místo té dvojky napíšete počet jedinečných hodnot ze závorky.
|
||
karbon Profil * |
#8 · Zasláno: 10. 7. 2008, 08:23:47
ninja, Kajman_
Děkuji za objasnění. |
||
Časová prodleva: 16 let
|
0