我正在处理包含葡萄酒名称,价格等的大型数据库。
我想查询所有霞多丽每瓶10美元或更少的表,但我一直得到10美元的结果。
dbGetQuery(db, "SELECT Name, Price FROM Wines
WHERE price<=10
AND name LIKE '%Chardonnay%'")
如果我只查询霞多丽,我会发现有些低于$ 10美元
895 Chardonnay 12
896 Reserve Chardonnay 16
897 Chardonnay 10
898 Wyckoff Vyd Chardonnay 21
899 Reserve Chardonnay 29
900 Fume Chardonnay 9
901 Barrel Fermented Chardonnay 13
902 Reserve Chardonnay 11
903 Chardonnay 10
904 Woodburne Cuvée Chardonnay 14
905 Chardonnay 7
当我运行上面的查询时,我得到了:
50 Chardonnay 10
51 Chardonnay 10
52 Chardonnay 10
53 Chardonnay 10
54 Chardonnay 10
55 Chardonnay 10
所有55个结果有10个作为价格
我觉得这一定是格式问题,但我一直无法正确解决
最佳答案
SQlite使用动态类型,您可以将字符串插入int列。您的价格可能会作为字符串插入,或者您的价格列不是数字(整数,浮点数)列。确保列的类型正确,并且您的价格值插入为正确的类型。
关于r - SQLite小于或等于仅返回相等的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36848368/