Fixes the dim time where clause interval queries.

- Changes the interval queries on dim time columns from <= ? and > ? to < ? and >= ?.
  This is more convinient for specifying where clause datetime values.
pull/1/head
Abhinav Sarkar 2016-01-14 16:18:53 +05:30
parent 064524f298
commit aede5d6fc6
2 changed files with 3 additions and 3 deletions

View File

@ -32,7 +32,7 @@ dimensionTablePopulateSQL popMode fact dimTableName = do
baseWhereCs = [ "(\n" baseWhereCs = [ "(\n"
<> Text.intercalate "\nOR " [ c <> " IS NOT NULL" | (_, c) <- colMapping ] <> Text.intercalate "\nOR " [ c <> " IS NOT NULL" | (_, c) <- colMapping ]
<> "\n)" <> "\n)"
, timeCol <> " <= ?" , timeCol <> " < ?"
] ]
insertC selectC whereCs = insertC selectC whereCs =
@ -46,7 +46,7 @@ dimensionTablePopulateSQL popMode fact dimTableName = do
return $ case popMode of return $ case popMode of
FullPopulation -> insertC baseSelectC baseWhereCs FullPopulation -> insertC baseSelectC baseWhereCs
IncrementalPopulation -> IncrementalPopulation ->
insertC baseSelectC (baseWhereCs ++ [ timeCol <> " > ?" ]) insertC baseSelectC (baseWhereCs ++ [ timeCol <> " >= ?" ])
<> "\nLEFT JOIN " <> dimTableName <> " ON\n" <> "\nLEFT JOIN " <> dimTableName <> " ON\n"
<> Text.intercalate " \nAND " <> Text.intercalate " \nAND "
[ fullColumnName dimTableName c1 <> " = " <> fullColumnName "x" c2 [ fullColumnName dimTableName c1 <> " = " <> fullColumnName "x" c2

View File

@ -195,7 +195,7 @@ factTablePopulateSQL popMode fact = do
, ftpsSelectTable = fTableName , ftpsSelectTable = fTableName
, ftpsJoinClauses = joinClauses , ftpsJoinClauses = joinClauses
, ftpsWhereClauses = , ftpsWhereClauses =
timeCol <> " <= ?" : [ timeCol <> " > ?" | popMode == IncrementalPopulation ] timeCol <> " < ?" : [ timeCol <> " >= ?" | popMode == IncrementalPopulation ]
, ftpsGroupByCols = map ((groupByColPrefix <>) . fst3) . filter thd3 $ colMap , ftpsGroupByCols = map ((groupByColPrefix <>) . fst3) . filter thd3 $ colMap
} }