| FAQ |
| Kalender |
|
|
#1 | |||
|
||||
|
Flitig postare
|
Hej,
Behöver hjälp med ett reguljärt uttryck som jag inte får att fungera. Mitt mål är att hämta alla domän som börjar på x men inte xn--. Följande hämtar alla domän på X: Kod:
SELECT domain FROM domains WHERE domain REGEXP '^x' Kod:
SELECT domain FROM domains WHERE domain REGEXP '^x' AND WHERE domain NOT REGEXP '^xn--' |
|||
|
|
Svara med citat
|
|
|
#2 | ||
|
|||
|
Nykomling
|
måste regex användas?
om inte kan du väl göra så här: Kod:
SELECT domain FROM domains WHERE LEFT(domain, 1) = 'x' AND LEFT(domain, 4) != 'xn--'; |
||
|
|
Svara med citat
|
|
|
#3 | |||
|
||||
|
Flitig postare
|
kan inte mysqls skumrask-syntax, men det ser ut som du har ett WHERE för mycket i det andra codeblocket.
|
|||
|
|
Svara med citat
|
|
|
#4 | |||
|
||||
|
Flitig postare
|
Tack Mackan kunde använda mig av LEFT faktiskt.
Såhär blev den slutgiltiga versionen: Kod:
SELECT domain FROM domains WHERE domain REGEXP '^x' AND LEFT(domain, 4) != 'xn--'
|
|||
|
|
Svara med citat
|
|
|
#5 | |||
|
||||
|
Mycket flitig postare
|
REGEXP är ganska resurskrävande och gör att index inte kan användas (vilket kanske även gäller LEFT() beroende på hur klokt MySQL är).
Kod:
WHERE domain LIKE 'x%' AND domain NOT LIKE 'xn--%' |
|||
|
|
Svara med citat
|
|
|
#6 | |||
|
||||
|
Flitig postare
|
martine - Har testat den tidigare men då fungerade det inte. Ska prova igen senare för att se att det inte bara var ett syntaxfel.
|
|||
|
|
Svara med citat
|
|
|
#7 | |||
|
||||
|
Mycket flitig postare
|
Citat:
Kod:
WHERE domain LIKE 'x%' HAVING domain NOT LIKE 'xn--%' |
|||
|
|
Svara med citat
|
| Svara |
|
|