如何从android中的sqlite获取特定模式的所有行

时间:2013-07-15 07:49:14

标签: android sqlite

在表中,一些数据采用某种模式,如频率,频率[1],频率[2] ......

如果在where子句中给出频率,如何从表中获取此模式的所有行?

我尝试使用'GLOB'关键字,但不再返回任何数据。

查询:

 select * from tblfrequencyCustom where frequency  GLOB  'Ff' OR  'Ff[*]'

1 个答案:

答案 0 :(得分:1)

您的查询无效,因为您的条件与(frequency GLOB 'Ff') OR ('Ff[*]')相同。 frequency GLOB 'Ff'没有通配符,因此与frequency='Ff'相同,与您的数据不匹配。 'Ff[*]'转换为整数0,这始终为假。

因此,您可以使用通用SQL运算符LIKE(不区分大小写):

SELECT * FROM tblfrequencyCustom WHERE frequency='frequency' OR frequency LIKE 'frequency[%]';

使用不太常见的运算符GLOB,您必须转义[]

SELECT * FROM tblfrequencyCustom WHERE frequency='frequency' OR frequency GLOB 'frequency[[]*[]]';