SQL选择邮政编码的前两个字符

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' 或: 如果您使用的是

我需要选择邮政编码的前两个字符,我可以这样做。 例如“BW”、“CW”等

但是,当我需要选择一些在第一个字母后面有数字的邮政编码时,例如“B1、B2、B3、B4”,我该怎么做

我想我只需要一个通配符来表示数值,这样它只会显示“B1,B2”,而不会显示“BW,BT”等


谢谢。

在大多数数据库中,您会使用
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]%'