我有一张叫promotions的桌子
已插入的数据:
COLUMNS VALUE
`startdate` 15-03-2014 00:00:00
`enddate` 30-05-2014 00:00:00
`promotion_for` 1 (product_id)用于插入数据的新查询
COLUMNS VALUE
`startdate` 15-03-2014 00:00:00
`enddate` 30-05-2014 00:00:00
`promotion_for` 1 (product_id)如果在插入日期内已经在同一产品中运行促销,我不想插入新的促销。
不知道如何为它生成MySQL查询。
发布于 2014-03-24 16:19:33
首先将唯一键添加到promotions:
ALTER TABLE `promotions`
ADD UNIQUE INDEX(`startdate`,`enddate`,`promotion_for`); 然后:
INSERT INTO `promotions` ( `startdate`,`enddate`,`promotion_for`)
VALUES ('15-03-2014 00:00:00', '30-05-2014 00:00:00', '1')
ON DUPLICATE KEY
UPDATE `startdate`='15-03-2014 00:00:00', `enddate`='30-05-2014 00:00:00', `promotion_for` = '1';https://stackoverflow.com/questions/22603669
复制相似问题