2011-09-17 31 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