SELECT contact_id, last_name FROM contacts
WHERE last_name like 'B%' ORDER BY last_name limit 0, 250
只返回B。
我需要的是从第一个B开始返回250行。如果少于250个B,那么我需要获得以下Cs,Ds等。
答案 0 :(得分:7)
警告:这种比较适用于SQL Server,我假设它也适用于MySQL,但无法测试它。
SELECT contact_id, last_name
FROM contacts
WHERE last_name > 'B'
ORDER BY last_name
LIMIT 0, 250
将排除被视为字母数字“小于”B的记录。
答案 1 :(得分:1)
大多数数据库引擎会对文本进行比较,以便这样做......
SELECT contact_id, last_name FROM contacts
WHERE last_name > 'B' ORDER BY last_name limit 0, 250
答案 2 :(得分:0)
你可以或你的陈述
SELECT contact_id, last_name FROM contacts
WHERE last_name like 'B%' or last_name like 'C%' or last_name like 'D%' ORDER BY last_name limit 0, 250
依旧......
答案 3 :(得分:0)
不喜欢'A%'怎么样? (所以你会先丢弃As和Bs)或Regexp?