Android 如何为房间数据库中的多个列编写select查询?
我想得到基于多列(“种族”、“口味”)的过滤记录 您可以在下面的数据库图像中看到,红色框是item_类型,蓝色框可以看到item_类型 现在我想用所有的“柑橘”、“浆果”、“坚果”来获得所有的“sativa”(item_类型)(item_口味)。为此,我写了这个查询Android 如何为房间数据库中的多个列编写select查询?,android,android-sqlite,android-room,Android,Android Sqlite,Android Room,我想得到基于多列(“种族”、“口味”)的过滤记录 您可以在下面的数据库图像中看到,红色框是item_类型,蓝色框可以看到item_类型 现在我想用所有的“柑橘”、“浆果”、“坚果”来获得所有的“sativa”(item_类型)(item_口味)。为此,我写了这个查询 SELECT * FROM StrainModel WHERE race LIKE 'sativa' AND flavors LIKE '%Berry%' OR flavors LIKE '%Citrus%' OR flavors
SELECT * FROM StrainModel WHERE race LIKE 'sativa' AND flavors LIKE '%Berry%' OR flavors LIKE '%Citrus%' OR flavors LIKE '%Nutty%'
但是这个查询是错误的,它提供了所有三种类型的数据(“sativa”、“indica”、“hybrid”),但我只想要“sativa”数据。试试这个
SELECT * FROM StrainModel WHERE (race = 'sativa' AND (flavors LIKE '%Berry%' OR flavors LIKE '%Citrus%' OR flavors LIKE '%Nutty%'));
试用
SELECT * FROM StrainModel WHERE race = 'sativa' AND (flavors LIKE '%Berry%' OR flavors LIKE '%Citrus%' OR flavors LIKE '%Nutty%')
而不是
SELECT * FROM StrainModel WHERE race LIKE 'sativa' AND flavors LIKE '%Berry%' OR flavors LIKE '%Citrus%' OR flavors LIKE '%Nutty%'
尝试
SELECT*FROM trainmodel,其中race='sativa'和(味道像'%Berry%'或味道像'%Citrus%'或味道像'%Nutty%')
。。。。感谢you@PrashantArvind您可以使用stetho在浏览器中查看数据库。这样可以节省调试时间