>main :: IO()
main = withPostgresqlConn "host=localhost user=Rocko port=5432 dbname=Rocko" $ runSqlConn $ do
runMigration migrateAll
let compDay = C.fromGregorian 2011 11 21
match <- selectList
[TestStartDate ==. compDay,
TestEstimatedEnd ==. compDay,
TestStatus /<-. [Passed,Failed]] []
scheduled <- selectList [TestStatus ==. Scheduled] []
-- liftIO $ print scheduled
liftIO $ print match
if (L.null match == True) then (liftIO $ print "date available!!!! ") else (liftIO $ print "date not available")
return()
特定の日がこの基準を満たしているかどうかを判断しようとしています:TestStartDateと等しくなく、TestEstimatedEndと等しくなく、Passed Not FailedもTestStatusのメンバーではありません。私のロジックに何が問題なのですか?
しかし、私が選んだ日付(TestEstimatedEndで一致するはずのもの)で正しいことをすることができないことを実証したいと思います。それは言うべきである:日付は利用できない。それで私の論理に何が間違っていますか?
> id | firmware | version | startDate | estimatedEnd | status
>----+---------------------------+------------+------------+--------------+-----------
>1 | BCC Admin | 0.0.00.001 | 2011-11-19 | 2011-11-21 | Scheduled
>ghcifoo> main
"date available!!!! "
明確にする:一致する日付がない場合、日付が利用可能であるとしますか? – ivanm
はい、これは私がしたいことです。 –
selectListの条件は結合式(&&)または論理積(||)ですか? –