我正在尝试检查特定表中的字段是否也包含数字,特别是我有一个记录,其中包含字段name
包含以下值:Besëlidhja Lezhë vs. Tërbuni Pukë 1 - 1
,所以我尝试获取该表的所有行,其中所有行包含name
字段中的数字。我尝试过:
SELECT * FROM `venue` where `name` like '%[0-9]%'
但这会返回空结果吗?
答案 0 :(得分:2)
这应该告诉您name
是否包含任何数字(未经测试)
SELECT * FROM venue WHERE name REGEXP '[0-9]'
答案 1 :(得分:1)
我认为这应该有效:
SELECT *
FROM venue
WHERE name like '%0%' or name like '%1%' or name like '%2%' or name like '%3%'
以此类推,直到您达到9。我希望这会有所帮助
答案 2 :(得分:1)
您可以尝试使用正则表达式来过滤名称栏中包含数字字符的名称。例如:
选择*从数据名称REGEXP'[a-z] ... [0-9]';
mySQL允许您使用正则表达式作为过滤器!
应该为诸如TërbuniPukë1-1这样的名称选择名称。如果您想练习正则表达式,那么这是一个不错的网站,用于测试您是否具有正确的正则表达式。 https://regex101.com/
希望这会有所帮助!