Этот запрос должен был вернуть мне четыре строки: четыре человека со статусом 50 (что в приложении означает «декретный отпуск»). Но он возвращает только один.
В HeidiSQL запрос даже не запускается, потому что он отображает
синтаксическая ошибка в строке 13:
(...)
соответствует вашей версии сервера MariaDB для правильного синтаксиса для использования рядом с 'a.id_regiao =' $ id_regiao '
AND a.cod_status = 50
И a.status 'в строке 13 * / "
Вот запрос. Я постепенно знакомлюсь с SQL-операторами, и я много раз искал по SO, прежде чем спрашивать:
//SELECTING PROJECT DATA
$query = "SELECT b.id_clt,b.nome AS nome_clt,
a.id_evento AS a_id_evento,a.data AS a_data,a.data_retorno AS a_data_retorno,
c.id_evento AS c_id_evento,c.data AS c_data,c.data_retorno AS c_data_retorno,
(SELECT nome FROM projeto WHERE id_projeto = a.id_projeto) AS nome_projeto,
(SELECT nome FROM curso WHERE id_curso = b.id_curso) AS nome_curso,
DATE_FORMAT(a.data,'%d/%m/%Y') AS a_data_br,
DATE_FORMAT(a.data_retorno,'%d/%m/%Y') AS a_data_retorno_br,
DATE_FORMAT(c.data,'%d/%m/%Y') AS c_data_br,
DATE_FORMAT(c.data_retorno,'%d/%m/%Y') AS c_data_retorno_br
FROM rh_eventos AS a
INNER JOIN rh_clt AS b ON (a.id_clt = b.id_clt AND a.cod_status = 50)
LEFT JOIN rh_eventos AS c ON (b.id_clt = c.id_clt AND c.cod_status = 54)
WHERE $cond_projeto a.id_regiao = '$id_regiao'
AND a.cod_status = 50
AND a.status = 1
AND NOW() BETWEEN a.data AND a.data_retorno
ORDER BY nome_projeto,b.nome;";