Нашел где косяк. При данной схеме игнорируются одинаковые параметры после первого использования. То есть, рабочий запрос вот:
Код:
SELECT id,date,km1,km2,memo1 from TBL1
WHERE date >= :DateFrom1 and date <= :DateTo1
AND km1 >= :KmFrom1 and km2 <= :KmTo1
UNION ALL
SELECT id,date,km1,km2,memo1 from TBL2
WHERE date >= :DateFrom2 and date <= :DateTo2
AND km1 >= :KmFrom2 and km2 <= :KmTo2
Может кто знает, это фича или баг?