SELECT tovar.name_tovar'Наименование продукции', tovar.lotok'Шт', tovar.price'Цена',
max(CASE WHEN id_tochka = 4 THEN kol ELSE '' END) AS 'Маг 1',
max(CASE WHEN id_tochka = 5 THEN kol ELSE '' END) AS 'Маг 2'
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar=tovar.id
WHERE zakaz.data_zap='2022-12-14' AND zakaz.id_tovar=tovar.id AND tovar.id_razdel=2
GROUP BY id_tovar
ORDER BY tovar.sort, tovar.id ASC;
SELECT tovar.name_tovar'Наименование продукции', tovar.lotok'Шт', tovar.price'Цена',
max(CASE WHEN id_tochka = 4 THEN kol ELSE '' END) AS 'Маг 1',
max(CASE WHEN id_tochka = 5 THEN kol ELSE '' END) AS 'Маг 2'
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar = tovar.id
WHERE zakaz.data_zap='2022-12-14' AND tovar.id_razdel=2
GROUP BY id_tovar
ORDER BY tovar.sort, tovar.id ASC;
SELECT tovar.name_tovar'Наименование продукции', tovar.lotok'Шт', tovar.price'Цена',
max(CASE WHEN id_tochka = 4 THEN kol ELSE '' END) AS 'Маг 1',
max(CASE WHEN id_tochka = 5 THEN kol ELSE '' END) AS 'Маг 2'
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar = tovar.id AND zakaz.data_zap='2022-12-14'
WHERE tovar.id_razdel=2
GROUP BY id_tovar
ORDER BY tovar.sort, tovar.id ASC;
добавилось только 1 наименование, вместо 20, стало 21, а их 29... как так может быть?
max(CASE WHEN id_tochka = 4 THEN kol ELSE '' END) AS 'Маг 1',
max(CASE WHEN id_tochka = 5 THEN kol ELSE '' END) AS 'Маг 2'
SELECT DISTINCT tovar.name_tovar'Наименование продукции', tovar.lotok'Шт', tovar.price'Цена'
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar = tovar.id AND zakaz.data_zap='2022-12-14'
WHERE tovar.id_razdel=2
ORDER BY tovar.sort, tovar.id ASC;
Выложил 2 таблицы, может кто-то сможет все таки ...
о каких комментариях идет речь?
что вы "увидели" такого что вы называете дерьмом?
или вы тут на форумах только спамите?
SELECT DISTINCT tovar.name_tovar'Наименование продукции', tovar.lotok'Шт', tovar.price'Цена',
max(CASE id_tochka WHEN 1 THEN kol ELSE '' END) AS 'Маг 1',
max(CASE id_tochka WHEN 2 THEN kol ELSE '' END) AS 'Маг 2',
max(CASE id_tochka WHEN 3 THEN kol ELSE '' END) AS 'Маг 3'
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar = tovar.id AND zakaz.data_zap='2022-12-14'
WHERE tovar.id_razdel=2
GROUP BY zakaz.id_tovar
ORDER BY tovar.sort, tovar.id ASC;
я добавил 1 запись, другой магазин сделал заказ, и первая строчка продублировалась
SELECT tovar.name_tovar `Наименование продукции`,
tovar.lotok `Шт`,
tovar.price `Цена`,
SUM(CASE id_tochka WHEN 1 THEN kol ELSE '' END) AS `Маг 1`,
SUM(CASE id_tochka WHEN 2 THEN kol ELSE '' END) AS `Маг 2`,
SUM(CASE id_tochka WHEN 3 THEN kol ELSE '' END) AS `Маг 3`
FROM tovar
LEFT JOIN zakaz ON zakaz.id_tovar = tovar.id AND zakaz.data_zap='2022-12-14'
WHERE tovar.id_razdel=2
GROUP BY tovar.id
ORDER BY tovar.sort, tovar.id ASC;