Я пытаюсь понять, как писать инструкции SQL, которые могут возвращать связанные строки данных из одной таблицы.SQL-запрос для связанных строк данных из одной таблицы
В качестве примера, я со следующей таблицей называется закупки:
------------------------------
|ID | Customer | Date | Cost |
------------------------------
1 | 1 | Mon | 20.0
2 | 1 | Tue | 10.0
3 | 1 | Sat | 23.0
4 | 2 | Thu | 211.0
5 | 2 | Mon | 24.0
6 | 2 | Sat | 50.0
7 | 3 | Mon | 34.0
8 | 3 | Sat | 200.0
9 | 3 | Fri | 90.0
Я хочу, чтобы данные о том, как много каждый клиент провел в субботу и соответствующие данные за сколько они потратили в понедельник, так что Я бы назвал следующие данные:
Saturday: [23.0,50.0,200.0]
Monday: [20.0,24,0,34.0]
Как это сделать? Я могу сделать:
SELECT cost FROM purchases WHERE Date=='Sat'
и SELECT cost FROM purchases WHERE Date=='Mon'
, но это не кажется очень удовлетворительным, потому что это зависит от того, в какой базе данных дает результат, и покупка может не произойти как в субботу, так и в понедельник.
Я исследовал Объединения и союзы для этой цели, но они, похоже, связаны с данными из более чем одной таблицы.
Я уверен, что есть стандартный способ решить эту проблему.
Что вы подразумеваете под «коррелировать сколько» –
Спасибо за комментарий, я попытался прояснить это в вопросе. –
Что делать, если клиент ничего не потратил ни на один из этих двух дней? –