REPLACE構文
つまり、String 内の from_str のすべての出現を to_str に置き換えます。ここで、from_str は正規表現の一致をサポートしていません。 操作例テストテーブルデータは次のとおりです。 mysql> `LOL` から * を選択します。 +----+----------------+--------------+-------+ | id | ヒーロータイトル | ヒーロー名 | 価格 | +----+----------------+--------------+-------+ | 1 | ブレードシャドウ | タロン | 6300 | | 2 | スウィフトスカウト | ティーモ | 6300 | | 3 | ラディアントレディ AA | ルクス | 1350 | | 4 | クロックワーク A、召喚 A | オリアナ | 6300 | | 5 | 至高の拳 | リー・シン | 6300 | | 6 | 武芸剣士 | 簡単 | 450 | | 7 | 速攻剣士 | ヤスオ | 6300 | +----+----------------+--------------+-------+ セット内の行数は 7 です (0.00 秒) 使用シナリオ 1 – (クエリ ステートメント):要件: 「hero_title」フィールド内のすべての「之」を「 - 」に置き換えて表示します。SQL は次のとおりです。 LOL から、repl_title、hero_name、price として REPLACE(hero_title、'之'、' - ') を選択します。 mysql> SELECT REPLACE(hero_title,'之',' - ') as repl_title,hero_name,price from `LOL`; +----------------+--------------+-------+ | repl_title | ヒーロー名 | 価格 | +----------------+--------------+-------+ | ブレード - シャドウ | タロン | 6300 | | スウィフトスカウト | ティーモ | 6300 | | ラディアントレディAA | ルクス | 1350 | | クロックワーク A、ジーニー A | オリアナ | 6300 | | 至高 - 拳 | リー・シン | 6300 | | 武芸剣マスター | 簡単 | 450 | | スイフトブレードマスター | ヤスオ | 6300 | +----------------+--------------+-------+ セット内の行数は 7 です (0.00 秒) 使用シナリオ 2 – (更新ステートメント):要件: 「hero_title」フィールドのすべての「A」を削除します。SQL は次のとおりです。 LOL を更新します。 SET hero_title=REPLACE(hero_title,'A',''); mysql> UPDATE `LOL` SET hero_title=REPLACE(hero_title,'A',''); クエリは正常、2 行が影響を受けました (0.05 秒) 一致した行: 7 変更: 2 警告: 0 -- 削除してクエリ: +----+--------------+--------------+-------+ | id | ヒーロータイトル | ヒーロー名 | 価格 | +----+--------------+--------------+-------+ | 1 | ブレードシャドウ | タロン | 6300 | | 2 | スウィフトスカウト | ティーモ | 6300 | | 3 | レディアント | ルクス | 1350 | | 4 | クロックワーク ジーニー | オリアナ | 6300 | | 5 | 至高の拳 | リー・シン | 6300 | | 6 | 武芸剣士 | 簡単 | 450 | | 7 | 速攻剣士 | ヤスオ | 6300 | +----+--------------+--------------+-------+ セット内の行数は 7 です (0.00 秒) 使用シナリオ 3 – (置換または挿入: REPLACE INTO)新しいレコードを挿入したい場合 (INSERT)、レコードがすでに存在する場合は、まず元のレコードを削除してから新しいレコードを挿入します。 需要シナリオ: このテーブルには、各顧客の最新の取引注文情報が格納されます。単一ユーザーのデータが重複して入力されないようにし、実行効率を最大化し、データベースとのやり取りを最小限に抑え、データベースの高可用性をサポートする必要があります。
注: 次の SQL に示すように、ユーザー名フィールドに一意のインデックス (Unique) を作成し、transId を自動増分に設定する必要があります。 -- 20 ポイントの再チャージを last_transaction (transId,username,amount,trans_time,remark) に置き換えます VALUES (null, 'chenhaha', 30, '2020-06-11 20:00:20', 'メンバーリチャージ'); -- 21 時にスキンを購入 REPLACE INTO last_transaction (transId, username, amount, trans_time, remark) VALUES (null, 'chenhaha', 100, '2020-06-11 21:00:00', 'リー・シン・シュプリーム・フィストスキンを購入'); ユーザー名が「chenhaha」のレコードが存在しない場合は、REPLACE ステートメントによって新しいレコードが挿入されます (最初の再充電)。それ以外の場合は、ユーザー名が「chenhaha」の現在のレコードが削除され、新しいレコードが挿入されます。 特別なビジネス要件がない限り、ID に特定の値を指定しないでください。そうしないと、SQL の実行に影響します。 これで、MySQL で replace 関数を実装するためのいくつかの実用的なシナリオに関するこの記事は終了です。MySQL replace の実用的なシナリオに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: JavaScript配列の重複排除のいくつかの方法についての詳細な説明
>>: CSS3 を使用したテキスト折り紙効果のサンプルコード
1. nginxソースディレクトリに新しいrtmpディレクトリを作成し、git clone http...
目次1. データをバックアップするためのmysqldumpコマンド2. 一般的なmysqldump操...
さっそく、コードをお見せしましょう。コードは非常にシンプルなので、勉強すれば理解できるようになります...
PHP で MySQL サーバーが消えた問題1. 背景以前、Codeigniter でコンソール コ...
シナリオ: ページAがページBを開くと、ページBで操作した後、ページAは変更されたデータを同期する必...
Dockerfile を使用したイメージのカスタマイズイメージのカスタマイズとは、実際には各レイヤー...
目次マスターの後ろの秒数オリジナルの実装最終マスタータイムスタンプマスターとのクロック差他の実行時間...
目次1. ソフトウェアパッケージ2. gccをインストールする3. libfastcommonをイン...
背景: Linux サーバーのファイルのアップロードとダウンロード。 XShell+Xftp インス...
しばらくReactを勉強した後、実践してみたいと思います。そこで、個人のブログのウェブサイトを再構築...
数日前にプログラムを書いていたとき、プロンプト情報 (TITLE) を新しい行で囲みたいと思いました...
a タグが新しいページを開くかどうか: (1)百度百科事典:ヘッダーが異なる場合は新しいページが開き...
目次1. はじめに2. インストール01. 新しい仮想マシンを作成する02. システムをインストール...
目次コード:補充:要約する要件: 左のツリーと右のテーブル。組織ツリーでノードを選択した後、詳細ペー...
この記事の例では、参考までに簡単な計算機を実装するためのjsの具体的なコードを共有しています。具体的...