|
分類:[.NET 全般]
以下のSQLを実行しようとすると「 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1」といったエラーが発生します。 環境はMySQLです。 最後の「WHERE tmp3.RoomStatus = '満'」を抜くと正常に動作します。 何か構文エラーに引っかかるようなことしているのでしょうか。 回避策または構文エラーの理由を教えてください。
SELECT COUNT(*) FROM (SELECT CASE WHEN tmp1.COUNT < tmp2.COUNT THEN '満' ELSE '空' END AS RoomStatus, tmp2.LodgDate FROM (SELECT COUNT(*) AS COUNT FROM RoomInfo WHERE RoomType = 'TSG') AS tmp1, (SELECT COUNT(*) AS COUNT, LodgDate FROM BookingInfo WHERE (LodgDate >= '2015-09-20' AND LodgDate <= '2015-09-25') AND RoomType = 'TSG' GROUP BY LodgDate) AS tmp2 ) AS tmp3 WHERE tmp3.RoomStatus = '満'
|