仅选择在sqlite中以大写字母开头的值

时间:2017-07-27 00:11:25

标签: sql sqlite

我有一个包含列name的表格。此列中的值可以大写或不大写(例如," adam"和#34; Adam")。如何只选择大写的值(以大写字母开头)?

3 个答案:

答案 0 :(得分:1)

如果您使用的是SQLite3,则可以使用REGEXP表达式

WHERE name REGEXP '^[A-Z]'

关于安装〜https://stackoverflow.com/a/8338515/283366

,这个答案中有一些很好的信息

答案 1 :(得分:0)

您可以明确collate binary并进行比较:

where name collate binary = 'Adam' collate binary

但是,binary通常是默认值,因此可能没有必要。

如果您的意思是任何大写字母,那么:

where substr(name, 1, 1) collate binary = 'A' collate binary

答案 2 :(得分:0)

使用REGEX执行此操作的优雅方式:

SELECT * 
FROM 'your_table'
WHERE 'field' REGEXP BINARY '^[A-Z]'