我有一个表调用4列接收:MySQL的自联接
id, date, volume, volume_units
的体积单位始终是作为要么“磅”的值或“加尔斯”存储。
我正在尝试编写SQL查询以获取特定日期范围内Lbs和Gals中的卷的总和。沿着线的东西:(不工作)
SELECT sum(p1.volume) as lbs,
p1.volume_units,
sum(p2.volume) as gals,
p2.volume_units
FROM receiving as p1, receiving as p2
where p1.volume_units = 'Lbs'
and p2.volume_units = 'Gals'
and p1.date between "2012-01-01" and "2012-03-07"
and p2.date between "2012-01-01" and "2012-03-07"
当我运行这些查询单独的结果是路要走。我知道这里的连接是错误的,但我不知道我在做什么错误来修复它。
你有一个巨大的'交叉join'发生这是什么原因造成您的问题。你需要指定你正在'加入''开'以使其变得准确。 – judda 2012-03-08 06:10:44