SQL选择邮政编码的前两个字符
我需要选择邮政编码的前两个字符,我可以这样做。 例如“BW”、“CW”等 但是,当我需要选择一些在第一个字母后面有数字的邮政编码时,例如“B1、B2、B3、B4”,我该怎么做 我想我只需要一个通配符来表示数值,这样它只会显示“B1,B2”,而不会显示“BW,BT”等SQL选择邮政编码的前两个字符,sql,where,wildcard,sql-like,Sql,Where,Wildcard,Sql Like,我需要选择邮政编码的前两个字符,我可以这样做。 例如“BW”、“CW”等 但是,当我需要选择一些在第一个字母后面有数字的邮政编码时,例如“B1、B2、B3、B4”,我该怎么做 我想我只需要一个通配符来表示数值,这样它只会显示“B1,B2”,而不会显示“BW,BT”等 谢谢。在大多数数据库中,您会使用left(): 有些需要使用substr(): 然后,要获得号码,您可以添加: where substr(postcode, 2, 1) between '0' and '9' 或: 如果您使用的是
谢谢。在大多数数据库中,您会使用
left()
:
有些需要使用substr()
:
然后,要获得号码,您可以添加:
where substr(postcode, 2, 1) between '0' and '9'
或:
如果您使用的是SQL Server,则可以执行以下操作:
WHERE postcode LIKE '[A-Z][0-9]%'
这将匹配以
B1
或B2
等开头的邮政编码,而与以BW
或BT
等开头的邮政编码不匹配。您使用的是什么数据库?发布样本数据和样本输出。
where substr(postcode, 2, 1) between '0' and '9'
where substring(postcode, 2, 1) between '0' and '9'
WHERE postcode LIKE '[A-Z][0-9]%'