2012-04-16 6 views
0

のX量の後に私は、MySQLのクエリ、日

SELECT 
b.sales_id,b.category_id,a.bus_title,b.sales_title,b.sale_starts,b.sale_ends 
FROM tbl_sales b INNER JOIN tbl_business a 
ON a.bus_id=b.bus_id 
WHERE b.active=1 
AND CURDATE() < DATE_ADD(b.sale_ends, INTERVAL 14 DAY) 
AND b.category_id='16' OR b.category_id 
IN (SELECT cat_id FROM tb_category WHERE parent_id=16) 
ORDER BY (b.sale_ends=CURDATE()) DESC,(b.sale_ends>CURDATE()) DESC,b.sale_ends ASC 

を次のクエリを使用して、以下を示すように、結果を取得し、

sales_id | category_id |bus_title | sales_title|sale_starts|sale_ends 
----------|-------------|------------|------------|-----------|---------- 
36  | 17  | my bus | my sale |2012-04-03 |2012-05-03 
35  | 19  | my bus 1 | my sale 1 |2012-04-03 |2012-05-03 
42  | 16  | my bus 12 | my sale 12 |2012-04-05 |2012-05-05 
10  | 17  | my bus 123| my sale 123|2011-12-15 |2011-12-18 

ています私は省略する必要がありますX amount of days past the End Date(14日後)の後の売上(削除しない)。しかし、上記のMySQLクエリは間違った結果を返し、終了日が2011-12-18のレコードを表示します。どのようにして効果的な方法でクエリを書くことができますか?

ヘルプが必要です。前もって感謝します。

+0

をあなたがここに今週中にこの同じ質問をしました。 – deed02392

+0

@ deed02392しかし、その時質問は明らかではなかったと思います。 –

答えて

0

はあなたのクエリにこれを追加します。

AND sale_ends < DATE_SUB(NOW(), INTERVAL 14 day) 
+0

が試しましたが、それでも同じ問題です。 –

+0

スキーマbuild SQLをダンプします。 – deed02392

関連する問題