По сути, я пытаюсь получить список покупок из одной таблицы и проверить, есть ли вложения, связанные с покупкой, и отобразить 1
или 0
, если есть / нет вложение найдено.
SELECT
CONCAT('#', LPAD(a.id, 5, '0')) as 'code',
a.id, a.value_total, DATE_FORMAT(a.date, '%d/%m/%Y') as 'date',
b.name as 'store',
CASE WHEN a.notes IS NOT NULL
THEN 1
ELSE 0
END AS notes
FROM
tb_purchase a,
tb_store b
WHERE a.id_store = b.id
AND a.id = :id_purchase // This line can be removed to get all the purchases or leave here to get just one with that specific ID
тогда у меня есть таблица с именем ts_purchase_att
, где я храню соотношение вложений между покупками и вложениями. Таблица имеет такую структуру:
id_purchase | id_attachment
32 | 47
32 | 127
33 | 68
38 | 97
Мне не нужно получать вложения, просто проверьте, есть ли хотя бы одно вложение, связанное с этой покупкой.
Я пытался использовать что-то подобное, но это не работает
LEFT JOIN
( SELECT 1 FROM ts_purchase_att c WHERE c.id_purchase = a.id ) as attachment
Что я делаю не так?