【发布时间】:2015-06-10 13:54:12
【问题描述】:
这是我的文章表的样子:(tbl_articles)
ID | SHORT_DESCRIPTION | DESCRIPTION | GROSS | NET
1 | v00556 | valve washroom | 9.00 | 7.49
等等
我的供应商以这种格式 (tbl_supplier) 向我提供了一个新的价目表
SHORT_DESCRIPTION | DESCRIPTION | GROSS | NET
v0056 | valve washroom | 9.50 | 7.99
如何用他的价格更新我的价目表?我们有共同的简短描述栏,但他也有新文章。两个列表都包含超过 10,000 篇文章,导出到 excel + 垂直搜索不起作用。
我试过了,但没有成功:
UPDATE
tbl_articles
SET
Gross =
(
SELECT
Gross
FROM
tbl_supplier
WHERE
tbl_articles.SHORT_DESCRIPTION = tbl_supplier.SHORT_DESCRIPTION
)
缺点:
- 新产品未添加到我的表中
- 无法更新 2 个字段
【问题讨论】:
-
tbl_articles表在SHORT_DESCRIPTION上是否有唯一索引?您将需要一个能够插入和更新现有记录而无需更复杂的代码逻辑。 -
如果您在简短描述中有唯一索引,请执行
insert ... on duplicate key update -
是的,所有的 short_description 都是独一无二的!
-
这些值是唯一的,但您能确认该列实际上有一个唯一索引来强制执行吗?
-
@Dimi 你能说得更具体点吗?
标签: mysql sql sql-update sql-insert