2016-05-17 3 views
0

これは私が使用したいクエリです。カラムの先頭の0をすべて削除する必要があります

UPDATE * FROM 'catalog_product_entity_varchar' 
SET TRIM(LEADING '0' FROM 'value') 
WHERE 'attribute_id' = '176'; 

は、だから私のテーブル内の行の多くはATTRIBUTE_ID = 176であり、そして列「の値は、」をたくさん持っている:私はそれだけでそれを見て、私はまちがっている場所を確認する方が簡単だと思います0を導く。私はattribute_idは176

これは少し私を超えているが、それは他の方法を更新しようとしているよりも速いようだときの値から先頭の0年代のすべてを削除します。

+0

そのクエリで何が問題になっていますか? – Spiderman

+1

どのデータベースを使用していますか – Hogan

+1

あなたはどのデータベースを使用していますか?同様の質問[ここ](http://stackoverflow.com/questions/92093/removing-leading-zeroes-from-a-field-in-a-sql-statement)があるようです。あなたはそれを見ましたか? –

答えて

2

SQLにエラーがあります。まず、FROMを削除し、UPDATEと一緒に使用していません。次に、選択するだけでなく、列を更新するために正しいSETを書き込んでください。

UPDATE `catalog_product_entity_varchar` 
SET `value` = TRIM(LEADING '0' FROM `value`) 
WHERE `attribute_id` = '176'; 

これは動作するクエリである必要があります。これが機能しない場合は、テーブル構造といくつかのデータの例を追加してください。

+0

ありがとう、これは完全に働いた。 – PlacementEdge

関連する問題