我正在开发一个包含葡萄酒名称,价格等的大型数据库...... 我想在桌子上查询每瓶$ 10或更少的所有霞多丽,但我一直得到10美元的结果。
dbGetQuery(db, "SELECT Name, Price FROM Wines
WHERE price<=10
AND name LIKE '%Chardonnay%'")
如果我只查询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个价格
我觉得它必须是格式化问题,但我无法做到正确
答案 0 :(得分:2)
SQlite使用动态类型,您可以将字符串插入到int列中。可能您的价格是作为字符串插入的,或者您的价格列不是数字(整数,浮点)列。确保该列的类型正确,并且您的价格值将作为正确的类型插入。