PHP / MYSQL Присоедините несколько таблиц

Я никогда не делал таких трюков PHP / MYSQL, чтобы присоединиться к мультизагрузкам. Пожалуйста, кто имеет опыт работы в этой области Справка: Поля из таблицы БИЛЕТЫ :

ID TICKETID CUSTOMER 234 29 9798797 235 76 7887878 

Поля из таблицы РЕЦЕПТЫ :

 ID DATENEW TOTAL 234 2012-12-03 22.57 235 2012-12-03 33.98 

Поля из таблицы ПЛАТЕЖИ :

 RECEIPT PAYMENT 234 cash 235 debt 

Поля из таблицы КЛИЕНТЫ :

 ID NAME 9798797 John 7887878 Helen 

Связь между таблицами очень легко понять: TICKETS.CUSTOMER=CUSTOMERS.ID; PAYMENTS.RECEIPT=RECEIPTS.ID=TICKETS.ID

Заключительный результат, который я хотел бы достичь:

 TICKETID DATENEW NAME PAYMENT TOTAL 29 2012-12-03 John cash 22.57 76 2012-12-03 Helen debt 33.98 

Я попытался сделать что-то подобное, но это где-то не так:

 $qry = mysql_query("Select TICKETS.TICKETID, RECEIPTS.DATENEW, PAYMENTS.TOTAL, CUSTOMERS.NAME, PAYMENTS.PAYMENT FROM PEOPLE, RECEIPTS INNER JOIN TICKETS ON RECEIPTS.ID = TICKETS.ID INNER JOIN CUSTOMERS ON TICKETS.CUSTOMER = CUSTOMERS.ID ORDER BY RECEIPTS.DATENEW"); 

Чтобы получить результат, вы должны использовать следующее:

 select t.ticketid, date_format(r.datenew, '%Y-%m-%d') datenew, c.name, p.payment, r.total from tickets t left join RECEPTS r on t.id = r.id left join CUSTOMERS c on t.customer = c.id left join payments p on t.id = p.RECEIPT and r.id = p.RECEIPT 

См. SQL Fiddle with Demo

Результат:

 | TICKETID | DATENEW | NAME | PAYMENT | TOTAL | --------------------------------------------------- | 29 | 2012-12-03 | John | cash | 22.57 | | 76 | 2012-12-03 | Helen | debt | 33.98 | 

Это даст результат, который вы хотите:

 SELECT p.RECEIPT AS TICKETID, r.DATENEW, c.NAME, p.PAYMENT, r.TOTAL FROM PAYMENTS p LEFT JOIN RECEIPTS r ON r.ID = p.RECEIPT LEFT JOIN TICKETS t ON t.ID = p.RECEIPT LEFT JOIN CUSTOMERS c ON c.ID = t.CUSTOMER ORDER BY r.DATENEW DESC