Я хочу получить данные из таблиц, где имеется более двух (не менее 2 обязательных) значений для одного клиента: 1) задолженность 2) задолженность. Мне нужно показать эти два значения в соответствии с максимальной датой для каждого клиента в одной строке. Я использую запрос нижеВыберите два значения из двух разных строк для одного NAME
QUERY
SELECT MAX(RECEIPTS.DATENEW) AS DATE,
MAX(CASE WHEN PAYMENTS.PAYMENT = 'debt' THEN PAYMENTS.TOTAL END) `TAKEN DEBT`,
MAX(CASE WHEN PAYMENTS.PAYMENT = 'debtpaid' THEN PAYMENTS.TOTAL END) `PAID DEBT`,
CUSTOMERS.NAME AS CUSTOMER
FROM RECEIPTS
INNER JOIN TICKETS ON RECEIPTS.ID = TICKETS.ID
INNER JOIN PAYMENTS ON RECEIPTS.ID = PAYMENTS.RECEIPT
INNER JOIN CUSTOMERS ON TICKETS.CUSTOMER = CUSTOMERS.ID
WHERE PAYMENTS.PAYMENT IN('debt', 'debtpaid')
GROUP BY RECEIPTS.ID
, которая возвращает результат, как показано ниже, кажется, ближе ...
Но мне нужно как долг и ценности debtpaid быть в одной строке для одного клиента и с их датами (отдельные даты). Необходимые данные что-то вроде ниже изображения
Не могли бы вы сделать http://sqlfiddle.com/ из этого, чтобы мы могли экспериментировать со значениями и запросом? База данных – skiwi
довольно большая и сложная, просто для идеи, как применить это к дате? – Saqib
Включите только те данные, которые подходят для его тестирования, вот как это должно быть сделано. sqlfiddle не позволяет публиковать полные базы данных. – skiwi