Таблица данных
id | regiondId | provId | munId | brgyId | deleted
1 | 4 | 41 | 411 | 411001 | 1
2 | 4 | 41 | 411 | 411002 | 1
3 | 4 | 41 | 412 | 412001 | 0
4 | 4 | 41 | 412 | 412002 | 0
5 | 4 | 41 | 413 | 413001 | 0
6 | 4 | 41 | 413 | 413002 | 0
7 | 4 | 41 | 414 | 414001 | 0
8 | 4 | 41 | 414 | 414002 | 1
выборка Я хотел выбрать 413 в munId
, но прежде чем я смогу выбрать 413, мне нужно сначала выбрать регион и пров.
Это мойзапрос будет выглядеть следующим образом.
SELECT *
FROM tbldata
WHERE regionId = '4'
AND provId = '41'
AND munId = '413'
AND brgyId = ''
AND deleted != 1
Таким образом, 1 удаляется, а 0 не удаляется, но использование оператора AND возвращает ноль, поскольку мой brgyId = null, а если я заменил оператор AND и использую OR рядом с brgyId, он выбирает все данные.с munId 413, даже если он удален.
есть ли способ получить конкретные данные на основе заданного значения, например, если я
SELECT *
FROM tbldata where regiondId = '4'
AND provId = '41'
AND munId = '413'
AND brgyId ='413001'
AND deleted = 1
, я получу данные с идентификатором 5, и еслиЯ
SELECT *
FROM tbldata
WHERE regiondId = '4'
AND provId = '41'
AND munId = '413'
AND brgyId = ''
AND deleted = 1
я получаю данные с идентификатором 5 и 6, и если я
SELECT *
FROM tbldata
WHERE regiondId = '4'
AND provId = '41'
AND munId = ''
AND brgyId = ''
AND deleted = 1
, я получаю данные с идентификатором от 1 до 8