
MySQLサーバのバージョン: 5.1.41
を使ってます。
・やりたいこと
テーブル名:test
id | photo |
1 /aaa/aa.jpg
2 /bbb/bb.jpg
:
:
となっているテーブルに対して フィールド名「photo」に格納されている文字列の先頭に
「 http://www.test.com 」 を全てのレコードに対して追加したいと考えております。
希望する結果
テーブル名:test
id | photo |
1 http://www.test.com/aaa/aa.jpg
2 http://www.test.com/bbb/bb.jpg
:
:
説明不足などございましたら、再度補足させていただきます。
アドバイスのほどよろしくお願い致します。
No.1ベストアンサー
- 回答日時:
昨日に引き続き回答します。
文字列の連結は concat関数を使用します。
update test
set photo = concat('http://www.test.com', photo)
where photo is not null
and photo not like 'http%';
where句は
「既にphotoに値が入っていて」かつ「まだhtpp...を付加していない」
条件で更新したいかな、と思って付けました。
条件無しで一括で更新して構わなければwhere以降は不要です。
以下は余計なお世話かもしれませんが。。
何かMySQL関連の書籍はお持ちではないのでしょうか?
今回のご質問程度の内容であれば、逆引き系のリファレンスが一冊あれば、「いつ来るかわからない回答を待つ」よりは、確実に速く(かつ正確な)解法が得られます。
Amazon で「MySQL 逆引き」で検索してみてください。
No.2
- 回答日時:
concat関数を使ってupdateは、既に#1さんが回答されている通りです。
前回の質問で、回答するタイミングがなかったので、参考までに。
「1~100の列値を持つ行を、1回のSQL発行で実装したい」という件。
「1回のSQL」という要件が、どれくらい重要なのか分かりませんが、MySQL 5.0以降とのことなので、ストアドプロシジャで実装するといった方法があります。
ちなみに、
PostgreSQLであれば、
(1)generate_series関数で生成したものをinsert
(2)PostgreSQL 8.4(?)で、「with句での再帰クエリ」が実装されているので、そこで生成したものをinsert
といった実装方法があり得ると思います。再帰クエリは、ちょっと小細工し過ぎではありますが。
SQL Serverでも、SQL Server 2005で、「with句での再帰クエリ」が実装されています。
「ストアドプロシジャで実装」??
まだまだ勉強不足です、、このキーワードでまた語句を勉強してみます。
ご回答ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excel VBAでAA(BBB) → BBB.AA に置換したい 2 2022/10/30 13:59
- PHP 画像ファイルの名前をそのままURLにする 3 2022/10/16 11:18
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- Oracle sqlで質問です。 Aテーブルの情報をBテーブルに更新かけたいです。 やりたいことは、Bテーブルの受 1 2023/05/17 11:17
- Excel(エクセル) エクセルデーターの並び替え 5 2022/08/06 09:59
- MySQL テーブル作成時のカラムについて 2 2022/08/27 21:48
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- カスタマイズ(車) クルマのリアシート交換でこの場合は取り付け可能でしょうか? 4 2023/02/04 08:36
- Oracle SQL update方法 2 2022/06/22 14:07
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MySQLで数字の値のもののみを取...
-
【SQL】他テーブルに含まれる値...
-
フラグをたてるってどういうこ...
-
SELECT INTOで一度に複数の変数...
-
truncate tableを使って複数の...
-
sqlに記述できない文字
-
既存データをINSERT文にして出...
-
エクセルvbaでpostgresに接続を...
-
オラクルのUPDATEで複数テーブル
-
2つのテーブルをLIKE演算子のよ...
-
SELECTした結果に行番号を求めたい
-
SQLサーバに対するSQL文で抽出...
-
テーブル名が可変の場合のクエ...
-
同一テーブル内での比較(最新...
-
timestampのデータはどのように...
-
csvデータ不要列の削除をbatフ...
-
PostgreSQLのtimestamp型で時間...
-
SQLで、Join句で結合したテ...
-
(SQL)日数の計算
-
T-SQLで任意の箇所で強制終了す...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
集計でテストの各教科の最高得...
-
MySQLで数字の値のもののみを取...
-
固定長のデータをmysqlで取り込...
-
文字列を追加してUPDATEしたい
-
エラーをいくらチェックしてもD...
-
ストアドプロシージャの実行方法
-
次の時間帯の勝率の合計を求め...
-
Using temporary; Using fileso...
-
【SQL】他テーブルに含まれる値...
-
フラグをたてるってどういうこ...
-
SELECT INTOで一度に複数の変数...
-
sqlに記述できない文字
-
UPDATEで既存のレコードに文字...
-
truncate tableを使って複数の...
-
PostgreSQLのtimestamp型で時間...
-
オラクルのUPDATEで複数テーブル
-
SQLをExcelで書いている人を良...
-
SQLで、Join句で結合したテ...
-
Accessの構成をコピーしたい
-
既存データをINSERT文にして出...
おすすめ情報