我有一张包含产品日期记录和CSV文件的表格,其中包含这些日期记录的更新数据。我需要创建一个查询,根据此实例中的列ID(SKU)更新这些记录。
*相关栏目
entity_id, entity_type_id, attribute_set_id, type_id, *sku*, has_options, required_options, *created_at*, updated_at, mf_guid
13366, 4, 4, simple, *18965*, 0, 0, *2015-05-18 20:08:27*, 2016-02-22 13:47:19, NULL
sku, created_at
18965, 2016-02-15 16:00:58
我在这里寻找的逻辑是:
UPDATE '2016-02-15 16:00:58' IF 'sku' = 'sku'
由于我有超过5万条记录,我已经使用EmEdiotr将此查询插入每一行。
UPDATE 'catalog_product_entity' SET created_at="2016-02-15 16:00:58" WHERE sku = '18965';
答案 0 :(得分:1)
尝试
UPDATE tablename SET created_at="2016-02-15 16:00:58" WHERE sku = '18965';
答案 1 :(得分:0)
如果您将CSV文件作为表格导入数据库,可以使用:
UPDATE table1.table_name
SET table1.created_at = csvtable.created_at
FROM table1 INNER JOIN csvtable ON table1.sku = csvtable.sku
其中csvtable
是导入的CSV表的表名,而table1
是您谈论的第一个表。
此查询将创建的值设置为每个对应csvtable
条目的sku
创建的值。
答案 2 :(得分:0)
SQL Query应该是这样的:
UPDATE table_name
SET created_at = '2016-02-15 16:00:58'
WHERE sku = 18965;