一直在网上寻找一段时间,似乎没有能够遇到任何类似于我想要的东西。我知道这是我写我的查询的方式,但任何帮助将不胜感激。MYSQL INSERT或UPDATE IF
的什么,我试图做的基础是:
- 插入一些项目到一个表,如果不存在
- 更新的项目,如果它确实存在
它的存在格式:
名称,条码,商品,数量,地点,价格和日期
名称 - 可用于多行 条码 - 用于特定项目,但可用作多个位置 项目 - 与条形码相同,但包含名称 数量 - 不言自明 位置 - 可以是不同的位置 价格 - 附加到特定项目 日期 - 上次购买该物品的时间
棘手的是,“名称”可以在不同地点有不同价格的多个项目(条形码和项目)。这个想法是,顾客可以看到他们在某个特定时间购买了多少物品,因此他们知道需要多少钱才能卖出它。
但是,他们购买的价格可能会有所不同,因此如果价格与以前的购买价格不同,他们需要在表格中创建另一行。
整个事情背后的想法是它记录每个地点每件商品的“名称”有多少,然后是他们在上次购买商品时购买的商品的价格。
希望是有道理的。
在伪代码:
Insert into table if does not exist
- name, barcode, item, quantity, location, price and date
If name, barcode, item, location and price are the same
- Update quantity and date (if more recent)
奇妙的是,设法得到那个工作,但是,如果我只想要它更新如果日期更新,那么现有的,需要添加什么? – roadkill247
如果它不是新的,保持原样?并只改变数量?或者让两者保持不变(那样在这种情况下什么都不做)? –
嗨ypercude,是啊,如果日期不是更新,那么离开这两个不变更 – roadkill247