我在制定SQL查询时遇到问题。该代码用于访问sqlite数据库的php脚本。
我想做什么:我只想选择超过单个偏移量的数据集:
select * from tab1 t, tab2 z where t.id = z.ref and (t.value - z.offset > '50')
为什么这不起作用?
我尝试了另一种方法,但这也失败了。
select *, t.value - z.offset as diff from tab1 t, tab2 z where t.id = z.ref and ( diff > '50')
colum diff包含正确的值,但我不能在where子句中使用它。
知道如何制定这个吗? 谢谢你的帮助! GALEO
答案 0 :(得分:1)
如果t.value
和z.offset
都是某种数字类型,则将您的上一个条件重写为(t.value - z.offset > 50)
(无撇号)。
您的2nd
查询使用WHERE
子句中的列别名,这是不允许的。