2015-04-21 48 views
0

有沒有辦法改變這個查詢,以便檢查frp_fundraisingprogram.start_date是否爲空或包含默認值?在查詢中添加對日期字段的非空檢查

SELECT frp_fundraisingprogram.id AS id 
FROM frp_fundraisingprogram 
WHERE frp_fundraisingprogram.start_date <= DATE_ADD(UTC_TIMESTAMP(), INTERVAL - 2 day) 
    AND frp_fundraisingprogram.date_entered > '2015-04-09 16:55:18' 
    AND NOT EXISTS 
    (SELECT * FROM aow_processed 
     WHERE aow_processed.aow_workflow_id='9bc1bb2e-cd5a-5c75-cc68-5526ae30331e' 
     AND aow_processed.parent_id=frp_fundraisingprogram.id 
     AND aow_processed.status = 'Complete' AND aow_processed.deleted = 0) 
    AND frp_fundraisingprogram.deleted = 0 
+0

你想要什麼,檢查值是否爲空/或包含默認值?該字段是可空的嗎? –

+1

如果您願意,可以考慮遵循以下簡單的兩步操作步驟:1.如果您尚未這樣做,請提供適當的DDL(和/或sqlfiddle),以便我們可以更輕鬆地複製問題。 2.如果您尚未這樣做,請提供與步驟1中提供的信息相對應的所需結果集。 – Strawberry

回答

0

就包括在where子句...

`...WHERE not isnull(frp_fundraisingprogram.start_date) 
AND frp_fundraisingprogram.start_date != '0000-00-00 ...` 

也就是說,如果你想排除這些記錄。如果您只希望顯示這些記錄,則可以反轉邏輯。