繁体   English   中英

MYSQL内部联接并从子查询中获取价值

[英]MYSQL Inner Join & Get value from Subquery

好的,我尝试比较两个表,然后输入三分之一名称的列表,以生成前10天的总值。 查询运行,但给我一个NULL结果,只有一个结果。 如果我从数据库中删除DATE_ADD并将其替换为实际日期,并为left子句添加一个值,而不是使用子查询,那么我会得到我正在寻找的特定日期。 我想做的是创建一个名称列表,其中包含当天和最近10天的值。 我确信我没有正确执行此操作,因此我非常陌生,感谢您的帮助。 简单的查询很容易,但是对我来说像这样的复杂的事情就变得陌生了。

select sum(t.price) from td.trs as t
inner join td.order as o on o.trsid=t.id
inner join pts.product as p on p.id=o.grp_id
where t.invoice_date=DATE_ADD(CURRENT_DATE(),INTERVAL 10 DAY)
and left(t.mfgid,3) IN (select name from name.list);

更改

where t.invoice_date=DATE_ADD(CURRENT_DATE(),INTERVAL 10 DAY)

where t.invoice_date >= DATE_ADD(CURRENT_DATE(),INTERVAL -10 DAY)

您可能没有得到任何结果,因为您正在对CURRENT_DATE()执行DATE_ADD ,这将给您未来10天的日期。 如果要获取最近10天的所有物品,请使用

WHERE t.invoice_date BETWEEN CURRENT_DATE() AND DATE_SUB(CURRENT_DATE(), INTERVAL 10 DAY)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM