是否可以为MySQL编写一条SQL语句,而无需使用REGEXP来查找匹配特定字母/数字排列的所有行?
即从myTable中选择myCol,其中myCol =’ {number} {number} {letter} ‘
应该返回12X和34Y,但不能返回123X或34YY
[我之前曾问过类似的问题-( 字母和数字排列的SQL匹配)。不同之处在于,我发现我无法在正使用的ADO.Net驱动程序中使用正则表达式。而且,由于我使用的Visual Studio2003与更高版本不兼容,因此无法更新它。]
试试这个:
SELECT myCol FROM myTable WHERE SUBSTRING(myCol, 1 , 1) >= 'A' AND SUBSTRING(myCol, 1 , 1) <= 'Z' AND SUBSTRING(myCol, 2 , 1) >= 'A' AND SUBSTRING(myCol, 2 , 1) <= 'Z' AND SUBSTRING(myCol, 3 , 1) >= '0' AND SUBSTRING(myCol, 3 , 1) <= '9'