У меня есть таблица зданий с различной информацией, относящейся к ним, например address
, building_id
и т. Д.
У меня также есть таблица отчетов, содержащая все, что может быть не так с любым из этих зданий. (Эта таблица огромна, поскольку каждый отчет выводится здесь.) Каждый отчет имеет статус 0 = закрыто или 1 = активно. Примечание: building_id
также есть в каждой записи, поэтому ее можно связать таким образом.
Последняя часть состоит в том, что человек вошел в систему с идентификатором, который контролирует, с каких зданий он начинает видеть.
Что я хочу сделать, так это составить список зданий, имеющих открытые отчеты. Сейчас он настроен на выполнение запроса, чтобы получить все здания с user_id
; затем выполните запрос, чтобы получить все открытые отчеты.
У меня было такое мышление:
SELECT *
FROM buildings
WHERE user_id = $currentUser AND (SELECT * FROM reports WHERE building_id = $buildingID and (count reports > 0))