我有一个包含列'name'(varchar)的表
我希望得到名称以'a','b','c','d','e,'或'f开头的所有行".
我已经构建了如下查询:
WHERE LEFT(u.name, 1)='a' OR LEFT(u.name, 1)='b' OR LEFT(u.name, 1)='c' OR LEFT(u.name, 1)='d' OR LEFT(u.name, 1)='e' OR LEFT(u.name, 1)='f'
有没有更好的办法?使用正则表达式可能?
让我们说我必须在更广泛的范围(A到M)做它会减慢查询吗?
尝试使用 IN
WHERE LEFT(u.name, 1) IN ('a', 'b', 'c', 'd', 'e', 'f')
Run Code Online (Sandbox Code Playgroud)
通过这种方式,您可以定义所需的任何起始字符,即使它不是按顺序排列的.
| 归档时间: |
|
| 查看次数: |
1614 次 |
| 最近记录: |