簡體   English   中英

SQL表達式使用MSSQL和MySQL之間的正則表達式區別

[英]SQL expression using regex difference between MSSQL and MySQL

我在MSSQL和MySQL中執行以下查詢

SELECT DISTINCT CITY FROM STATION WHERE CITY LIKE '[aeiou]%'

它以MSSQL中的元音打印所有城市,但在MySQL中執行時不打印任何行(無錯誤)

MySQL LIKE支持的唯一通配符是% (對於任何字符串)和_ (對於任何單個字符)。 它不支持字符集的MSSQL擴展[] 如果需要,請使用正則表達式,而不是通配符。

SELECT DISTINCT CITY FROM STATION WHERE CITY RLIKE '^[aeiou]'

請參閱SQL LIKE子句的特殊字符列表,以便比較不同SQL實現之間的LIKE

MySQL將REGEXP關鍵字用於正則表達式,因此您需要類似的東西

SELECT DISTINCT CITY FROM STATION WHERE CITY REGEXP '^[aeiou]'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM