2014-10-06 274 views
1

我有超过2000件产品的数据库中有610件产品,其重量以克为单位。如何使用MySql将产品重量从克变更为Kg?

我能找到这些产品与该搜索

SELECT * FROM `jos_vm_product` WHERE `product_weight_uom` LIKE 'grams' 

我想重量改变为公斤,这意味着分割product_weight数量由1000

我认为分工是

SELECT product_weight/1000 FROM jos_vm_product 

我错过了一些撇号吗?

如何将这两个查询结合在一起?

+1

您是打算实际更新数据库还是仅在查询期间进行转换? – JME 2014-10-07 00:47:30

+0

我想改变数据库。我很抱歉,如果我的问题是不清楚 – Stingraynut 2014-10-07 23:31:15

回答

4

试试这个,

UPDATE jos_vm_product SET product_weight = product_weight/1000, 
product_weight_uom='Kg' WHERE product_weight_uom LIKE 'grams'; 
1

根据您的使用只需要选择和要求加入这两个,我知道你正在寻找比存储不同的单元检索数据,而不是实际上改变的是表。

因此,如果您打算将重量更改为千克,但仅用于显示目的,并且您并不想要实际更改表格内容,则不需要更新。

在这种情况下,你需要一个类似的查询:

SELECT product_weight/IF(product_weight_uom LIKE 'grams',1000,1) 
    FROM jos_vm_product; 

你product_weight将由要么1000分(如果该行指克)或1(否则)。

+0

我希望让所有的产品都使用作为千克重量的单位更改数据库。它看起来像更新的答案是正确的使用? – Stingraynut 2014-10-07 23:33:01

+1

然后更新是你需要的。 – tonypdmtr 2014-10-08 06:33:15