考虑我有3列产品名称,产品ID和库存ID。当我按产品名称插入新产品时,如果它不存在,则应将库存ID显示为product001。但是,如果产品已存在,则应将现有库存ID的值增加1(product002)。我该如何为此编写SQL查询? 这就是我到目前为止所做的。
INSERT
INTO product (productname, productID, inventoryID)
VALUES ("Book", 3, (CONCAT(MID(productname,1,2),'-',1)))
ON DUPLICATE KEY
UPDATE inventoryID = CONCAT(MID(productname,1,2),'-',((SELECT
SUBSTRING(inventoryID, PATINDEX('%[0-9]%', inventoryID),
LEN(inventoryID)) + 1)));