我需要将 2 个日期列连接到 1 个日期列中,但如果有相同的年份和月份,只需写其中一个
查询更多这样的
SELECT id ,date, SUM(value) AS value
FROM (
SELECT id, date1 AS date, value FROM inventory WHERE YEAR(date1) = YEAR(NOW()) AND divisionCode LIKE 'AB000' GROUP BY id
UNION ALL
SELECT id, date2 AS date, value FROM inventory WHERE YEAR(date2) = YEAR(NOW()) AND divisionCode LIKE 'AB000' GROUP BY id
) AS subquery
GROUP BY id, date;
显示更多这样的内容
id |date |value
-------------------------
251 |2023-01-06 |50
252 |2023-01-27 |70
252 |2023-03-02 |70
253 |2023-07-06 |20
366 |2023-08-09 |100
366 |2023-08-15 |100
367 |2023-08-07 |120
367 |2023-08-13 |120
谢谢,我已经用 NOT 解决了我的问题
SELECT id, date1 AS date, value
FROM inventory
WHERE YEAR(date) = YEAR(NOW()) AND divisionCode LIKE 'AB000'
GROUP BY id
UNION ALL
SELECT id, date2 AS date, value
FROM inventory
WHERE YEAR(date2) = YEAR(NOW()) AND NOT MONTH(date1) = MONTH(date2) AND divisionCode LIKE 'AB000'
GROUP BY id;