2013-10-29 65 views
0

我在我的SQLite數據庫2代表加入一個是用戶與其他的付款如何從一個表中檢索所有記錄在當月記錄

USERS:

ID Name 
"1" "shan" 
"2" "Abc" 
"3" "Def" 
"4" "Whi" 

付款:

ID UserID PayDate   Amount 
"1" "1" "2013-10-27" "700" 
"2" "1" "2013-11-12" "700" 
"3" "2" "2013-09-12" "800" 

如何檢索支付當月金額的所有用戶和用戶。我還想要所有尚未付款的用戶。

+0

IM在sqlite的努力,我已經試過這種 選擇Users.Name,Users.HouseNo,的strftime( '%Y-%間%d',Payments.PayDate)從用戶 日期留在 加入付款 Users.ID = Payments.UserID 其中 strftime('%m',Payments.PayDate)

回答

0

嘗試財產以後這樣的:

SELECT Users.Name 
FROM Users 
LEFT JOIN Payments 
    ON Users.ID = Payments.UserID 
WHERE Payments.PayDate = <date you are looking for> 

您還可以使用WHERE PayDate BETWEEN「日期1」和「日期2」 這將返回所有用戶和支付將是NULL,如果沒有付款記錄。

+0

它沒有顯示所有用戶 –

+0

所有用戶都只會到達,直到我'不要使用where子句。但寫了我的where子句後,它只顯示支付金額 –

+0

的用戶謝謝@Kairan我做了它,我做了一些小的改變,你的查詢 像這樣在條款 '2013-10-1'和''之間Payments.PayDate' 2013-10-31'或Payments.PayDate爲空 –

相關問題