![]() |
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--' |
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--'; |
kan inte mysqls skumrask-syntax, men det ser ut som du har ett WHERE för mycket i det andra codeblocket.
|
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--' |
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--%' |
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.
|
Citat:
Kod:
WHERE domain LIKE 'x%' HAVING domain NOT LIKE 'xn--%' |
Alla tider är GMT +2. Klockan är nu 23:32. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson