SELECT Field1
FROM Table
WHERE Field1 BETWEEN "A%" AND "D%"
示例数据:SQL之间丢失的数据
A432434324324
B435435435
C5654664546
D5465465546546
A768677687
B8768678768
A65446456546
B876867877868
查询结果不会包括“d”行,任何想法如何应对呢? (我需要操作文本,而不是数字)。
SELECT Field1
FROM Table
WHERE Field1 BETWEEN "A%" AND "D%"
示例数据:SQL之间丢失的数据
A432434324324
B435435435
C5654664546
D5465465546546
A768677687
B8768678768
A65446456546
B876867877868
查询结果不会包括“d”行,任何想法如何应对呢? (我需要操作文本,而不是数字)。
离开了通配符和尝试:
WHERE Field1 >= 'A' AND Field1 < 'E'
或者:
WHERE LEFT(Field1, 1) BETWEEN 'A' and 'D'
的'%'
通配符用于LIKE
,不为其他字符串比较。
有两点需要注意:
Field1
使用索引。您不能在“between”函数中使用通配符。通过查询,您可以获得A与%符号,D符号和%符号之间的所有值。 %符号位于数字之前。
通配符用于搜索。这里RDBMS将它们视为文字。 所以,你得到所有以a开头的行,并且有一个值高于'%'值的第二个字符,并且将所有行的值都设置为'D',第二个字符的值小于' %”。
尝试 之间'A'和'DZZZ' 或类似的东西。
@哈利:你看过这个问题,错过了代码吗? – 2014-11-05 11:29:03
@哈里:它被标记,因为MySQL也是SQL。 – 2014-11-05 11:29:26
我读过了,简单的复制粘贴错误@juergend – Haris 2014-11-05 11:29:31