Я пытаюсь отфильтровать accountledger.transactiondate, чтобы вернуть только те возмещения между 2019-04-01 и 2020-03-31.
Однако предложение WHERE не действует.
У меня естьперенес оператор WHERE во многие места в скрипте;без изменений в результатах.
Это мой код:
SELECT accountledger.CAMPUSCODE, accountledger.ID, students.FNAME,
students.LNAME, accountledger.PROGRAM,
accountledger.TRANSACTIONDATE, accountledger.TRANSACTIONAMOUNT,
accountledger.DESCRIPTION as 'ENR Desc',
accountledger.TRANSACTIONCODE as 'Inv Desc',
chart_accounts.NAME AS 'ChAcc Name'
FROM accountledger
INNER JOIN students
ON accountledger.ID = students.ID
INNER JOIN fees
ON accountledger.TRANSACTIONCODE = fees.NAME
INNER JOIN chart_accounts
ON fees.ACCOUNT = chart_accounts.ACCOUNT
WHERE accountledger.TRANSACTIONtype = 'I'
and accountledger.transactioncode like '%refund%'
or accountledger.transactioncode like '%paid to d-ed%'
or accountledger.transactioncode like '%paid to military%'
or accountledger.transactioncode like '%paid to voc rehab%'
and chart_accounts.NAME
AND accountledger.transactiondate BETWEEN 2019-04-01 AND 2020-03-31
GROUP BY accountledger.id
ORDER BY accountledger.TRANSACTIONDATE
Я ожидаю только тех возмещений, которые были выпущены в параметрах даты оператора WHERE.Однако скрипт возвращает все возвраты независимо от даты транзакции.