Here is my query:
SELECT accession_2.accession_no,
accession_2.created_date,
refmd_2.code AS DocCode,
other01.val AS Clinical_History,
other02.val AS NoReturnAddress,
NoProvider
FROM accession_2
WHERE (accession_2.created_date >= '11-1-21') and (accession_2.created_date >= '11-30-21')
OR other02.val IS NOT NULL
OR other03.val IS NOT NULL
data results
Accession_no created_date DocCode CliincalAddress NoReturnAddress No_Provider
12345 2004-12-16 123 PO box 123 Good Address NULL NULL
1278 20014-12-16 453 Po Box 4556 NULL Yes NULL
1238 2021-11-01 352 PO Box 389 NULL NULL NULL
1240 2021-12-15 444 PO Box 555 NULL NULL Yes
The results I want to return are only the rows that are not NULL for every field and between the date range specified in the where clause. I would expection the 3rd row to be gone, but instead it is showing up.
Are the OR's throwing this off? I am getting rows and rows of data in all kinds of data ranges, and the NULL's are being eliminated, but when I change the OR's to AND's I get NO data returned.
Please help me what am I doing wrong?