Есть две таблицы: Код (Text): select * from tbl_adresa; +---------+-----------+ | adresID | adresname | +---------+-----------+ | 2 | aaa | | 1 | bbb | | 3 | ccc | +---------+-----------+ Код (Text): select * from tbl_doc_adr; +--------+-----------+----------+ | ID | doc_id | adres_id | +--------+-----------+----------+ | 2 | 2 | 2 | | 3 | 2 | 3 | | 4 | 1 | 2 | | 5 | 3 | 3 | | 6 | 4 | 1 | | 7 | 4 | 3 | +--------+-----------+----------+ Мне надо сформировать запрос, выдававший все данные из первой таблицы и количество строк во второй таблице, где для 4-го документа tbl_adresa.adresID=tbl_doc_adr.adres_id. Запрос: [sql]select tbl_adresa.*,count(*) from tbl_adresa, tbl_doc_adr WHERE doc_id='4' AND tbl_adresa.adresID=tbl_doc_adr.adres_id GROUP BY adresID;[/sql] Выдает такой результат: Код (Text): +---------+-----------+----------+ | adresID | adresname | count(*) | +---------+-----------+----------+ | 1 | aaa | 1 | | 3 | ccc | 1 | +---------+-----------+----------+ А нужно, чтобы строки с 0 значением не отсеивались, т.е. результат должен быть таким: Код (Text): +---------+-----------+----------+ | adresID | adresname | count(*) | +---------+-----------+----------+ | 1 | aaa | 1 | | 2 | bbb | 0 | | 3 | ccc | 1 | +---------+-----------+----------+ Подскажите пожалуйста как реализовать.
Спасибо за подсказку. Вроде вкурила. [sql]SELECT tbl_adresa.*, count(tbl_doc_adr.adres_id) FROM tbl_adresa LEFT JOIN tbl_doc_adr ON tbl_doc_adr.adres_id=tbl_adresa.adresID AND doc_id='4' GROUP BY adresID;[/sql] Код (Text): +---------+-----------+-----------------+ | adresID | adresname | count(adres_id) | +---------+-----------+-----------------+ | 1 | aaaaaaa | 1 | | 2 | bbbbbbb | 0 | | 3 | ccccccc | 1 | +---------+-----------+-----------------+