2011-09-17 33 views
0
select si.total 
from sales_inv si,c nf_order co 
where si.order_num=co.order_no 
and co.cnf_no='CNF001' 
and co.added_on 
between '$month1' and '$month2' 

在这里,在这个查询我想从表sales_inv其中销售发票的order_numorder_numbercnf_order应该等于获得总。MySql的日期出了错

added_on是这应该是$month1$month2

$month1$month2之间的时间戳存储在时间戳格式

这查询不工作几个月变量,我在做什么错?

+0

说: “这查询不工作” 是不是足够。什么不起作用? –

+0

我的意思是说我没有收到任何结果,但我希望这些表中的数据能够显示,但是没有收到任何错误。该查询只运行没有显示任何结果 – bala

+0

你确定month1和month2是在正确的格式?如果你删除了最后一行,它工作吗? – dlawrence

回答

0

做你试试这个

select si.total 
from sales_inv si,c nf_order co 
where si.order_num=co.order_no 
and co.cnf_no='CNF001' 
and (co.added_on 
between '$month1' and '$month2') 

编辑: -

使用日期函数

select si.total 
    from sales_inv si,c nf_order co 
    where si.order_num=co.order_no 
    and co.cnf_no='CNF001' 
    and (DATE(co.added_on) 
    between DATE('$month1') and DATE('$month2')) 
+0

@bala:看看我的编辑 – Gowri

+0

谢谢gowri ...它的现在工作.. :) – bala

+0

@bala:不客气,先生! – Gowri

0

尝试:

select si.total 
from sales_inv si,c nf_order co 
where si.order_num=co.order_no 
and co.cnf_no='CNF001' 
and co.added_on 
between STR_TO_DATE('$month1', '%Y-%m-%d') and STR_TO_DATE('$month2', '%Y-%m-%d') 
+0

它显示了相同的结果lawrence – bala

+0

当你排除co.added_on子句时,你能给我打印出来的数据吗? – dlawrence

+0

我试过了,即使通过手动输入日期值,但它不工作从sales_inv si,cnf_order co中选择si.total,其中si.order_num = co.order_no和co.cnf_no ='$ res-> cnf_name'和co.added_on STR_TO_DATE('2011-04-01','%Y-%m-%d')和STR_TO_DATE('2011-09-31','%Y-%m-%d') – bala