我有这个sql语句:
SELECT * from tBooks where BookNbr = '20111122-001'
BookNbr 定义为 varchar (15)
,并且该记录确实存在于表中。
我认为这可能与破折号有关,但不知道为什么......
最佳答案
所以这可能是连字符与短破折号与长破折号的问题。 (您可以通过将显示的匹配字段粘贴到 ascii 编辑器中以查看是否出现多字节字符来确认这一点。)
SELECT * from tBooks where BookNbr like '20111122%001'
这样 %
会忽略中间的特定标点符号。
关于sql - Firebird:为什么这个sql语句在存在记录时找不到记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10539169/