Autor | Zpráva | ||
---|---|---|---|
turtle Profil * |
#1 · Zasláno: 18. 10. 2006, 12:30:28
Mám tabuľku s jediným riadkom, so sĺpcom skupina (varchar), jeho hodnota je '1|2'
ak urobím select: SELECT * FROM tab WHERE 1 REGEXP `skupina` vo výsledku je tento riadok SELECT * FROM tab WHERE 2 REGEXP `skupina` vo výsledku je tento riadok SELECT * FROM tab WHERE 3 REGEXP `skupina` výsledok je prázdny podľa očakávania Ale: SELECT * FROM tab WHERE 10 REGEXP `skupina` opäť je vo výsledku tento riadok rovnako funguje SELECT * FROM tab WHERE 11 REGEXP `skupina` SELECT * FROM tab WHERE 12 REGEXP `skupina` ... Moja otázka: Ako napísať podmienku, alebo ako zmeniť reťazec v stĺpci skupina, aby v prípade 10, 11, 12... bol výsledok prázdny? |
||
nightfish Profil |
#2 · Zasláno: 18. 10. 2006, 12:36:52
SELECT * FROM tab WHERE skupina REGEXP '^1|' or skupina regexp '|1|' or skupina regexp '|1$' or skupina regexp '^1$'
snad jsem na žádnou z možností nezapomněl |
||
turtle Profil * |
#3 · Zasláno: 18. 10. 2006, 14:23:23
Vďaka za nakopnutie, tak som na to asi prišiel.
Ak by to niekoho zaujímalo, toto funguje: SELECT * FROM tab WHERE 10 REGEXP CONCAT('^(', `skupina`, ')$') |
||
Časová prodleva: 18 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0