2014-02-07 101 views
0

是否存在僅匹配空格的通配符?我試圖找到看起來像所有記錄:僅匹配空格的通配符

Berlin DE 
Munchen DE 
London  GB 

那是我的查詢:

SELECT 
    cities_aliases.alias, 
    cities_aliases.id as alias_id, 
    cities.id as clean_id, 
    cities.city, 
    cities.country 
FROM 
    cities_aliases, 
    cities 
WHERE 
    LOWER(cities_aliases.alias) LIKE CONCAT(cities.city,'WILDCARD_THAT_MATCHES_WHITESPACES_ONLY', LOWER(cities.country)) 
    AND 
    cities.country = cities_aliases.country 
    AND 
    cities_aliases.citycode IS NULL 

回答

1

沒有,通配符不能被定義它始終是「什麼」。

但是,您可以通過使用REGEXP函數來實現您想要的功能。

這可能會很慢,因爲它通常會導致全表掃描,並且如果您有大量數據集,則可能需要一些時間。

例如:

SELECT city FROM cities 
WHERE city REGEXP 'London\s*GB'