web-dev-qa-db-ja.com

フィールド内の既存の値にプレフィックスを付加するSQLクエリ

私はこれに対する答えを検索し、検索しましたが、これはSQLを知っている人(私ではない)にとっては子供の遊びでなければならないと思います。

DBのテーブルのフィールドの値にプレフィックスを挿入したい。

具体的には、jos_contentテーブルがあり、その中に 'title'フィールドがあります(このフィールドには、joomlaサイトのコンテンツアイテムのタイトルが含まれています)。

この「タイトル」フィールドの値はすべて、個人の名前です。今私がしたいのは、プレフィックス「Mr.」を追加することですこのフィールドのすべての値。

編集鉛筆アイコンをクリックしてすべての値の前にMr.を追加するだけでphpmyadminからこれを行うことができますが、約750行と 'Mr.'のプレフィックスを挿入できるSQLコマンドがあります。このフィールドのすべての値の前に大きな助けになります。

「UPDATE」コマンドについて読んだことがありますが、それは値をあなたが提供したものに置き換えます。しかし、値をそのままにして、それらの前にプレフィックスを追加したいと思います。

誰でも私がSQLコマンドでこれを達成するのを助けることができますか?

トンありがとう。

18
Sean2015

すべての行でこれを更新するような他の条件はありません。

UPDATE jos_content SET title = CONCAT('Mr. ', title) 

条件付きで更新する場合、特定の行を更新する必要があることを意味します

 UPDATE jos_content SET title = CONCAT('Mr. ', title)  where fiedl_name ='condition'

eg: UPDATE jos_content SET title = CONCAT('Mr. ', title)  where id = '1'

これにより、id = 1を含む1行のみが更新されます。

これを行う前に、バックアップを保持する必要があります

51
Jobin Jose
update tablename set title = 'Mr. ' || title where ....
5
sufleR

UPDATE jos_content SET title = CONCAT('Mr. ', title) WHERE 1

クエリをテストする前に、データベースのバックアップを作成してください。

4
Valentin Despa

こうやって

たとえば、国コードの前に+ symbolを追加する場合:

UPDATE [masters].[country] SET Countrycode = '+' +Countrycode
1
Thivan Mydeen