MySQLバッチは特定のフィールドのスペースを削除します

MySQLバッチは特定のフィールドのスペースを削除します

Mysql で特定のフィールドからスペースを一括削除する方法はありますか?文字列の前後のスペースだけでなく、文字列の途中のスペースも削除したい。その答えは、MySQL 独自の replace 関数を使用して replace することです。trim 関数もあります。

(1)MySQLの置換関数

構文: replace(object,search,replace)

意味: オブジェクト内の検索のすべての出現をreplaceで置換する

例: ニュース テーブルのコンテンツ フィールドのスペースをクリアします。 update `news` set `content`=replace(`content`,' ','');

(2)MySQLトリム関数

構文: trim([{BOTH | LEADING | TRAILING} [remstr] FROM] str)

次の例は、次のことを示しています。

mysql> TRIM('phpernote')を選択します。 
-> 'phpernote' 
mysql> SELECT TRIM(LEADING 'x' FROM 'xxxphpernotexxx'); 
-> 'phpernotexxx' 
mysql> SELECT TRIM(BOTH 'x' FROM 'xxxphpernotexxx'); 
-> 'phpernote' 
mysql> SELECT TRIM(TRAILING 'xyz' FROM 'phpernotexxyz'); 
-> 'phpernotex' 

MySQL データベースにデータを挿入する際、不注意により、テキスト列のいくつかの行の前に余分なスペースがありました。強迫性障害のため、また将来起こりうる問題を避けるために、このスペースを削除することにしました。インターネットで見つけた方法のほとんどは、直接置換を使用するものでした。

更新の例
SET col = replace(col, ' ', '')
WHERE col を '^ ' に置き換えます。

この方法は行頭のスペースは削除できますが、単語を区切るために使用される列内の文字間のスペースも削除され、大きなテキストが連結されるため、実行可能ではありません。

その後、置換を使用するときに正規表現を使用して一致させることができるかどうかを確認したいと思いました。しばらく調べた後、それは実現不可能であることがわかりました。

最後に、比較的シンプルで実現可能と思われる方法を思いつきました。

まず、CONCAT() を使用して、スペースのある行の先頭に 'x' 文字を追加します。

更新の例
SET col = CONCAT('x', col)
WHERE col 正規表現 '^ ';

これにより、行の先頭に 2 つの文字「x」が追加されます。

次に、REPLACE を使用して 2 つの余分な文字を一緒に削除します。

更新の例
SET col = REPLACE(col, 'x', '') を設定します。
WHERE col 正規表現 '^x ';

要約する

上記は、MySQL の特定のフィールドからスペースを一括で削除する方法についての説明です。お役に立てれば幸いです。興味のある方は、MySQL の変数の宣言とストアド プロシージャの分析、比較的重要ないくつかの MySQL 変数、MySQL データベース開発仕様 [推奨] などを参照してください。ご質問がございましたら、いつでもメッセージを残していただければ一緒にご相談させていただきます。

以下もご興味があるかもしれません:
  • フィールドの内容の一部を置き換えるには、mysql で replace を使用します。
  • MySQL の replace into ステートメントの使用方法の詳細な説明
  • MYSQL REPLACE および ON DUPLICATE KEY UPDATE ステートメントによる問題解決の例
  • 重複キー更新におけるMySQLのReplace intoとInsert intoの本当の違い
  • MYSQL バッチ置換における置換構文の使用の詳細な説明

<<:  Linux で SSH 経由でリモート ファイルシステムをマウントする方法の詳細な説明

>>:  js ドラッグ アンド ドロップ テーブルでコンテンツ計算を実現する

推薦する

Docker を使用してフロントエンド アプリケーションをデプロイする方法

Dockerはますます普及しています。環境を軽量かつ柔軟に分離し、容量を拡張し、運用保守管理を容易に...

jsを使用して簡単なスネークゲームを書く

この記事では、参考までに、jsで書かれたシンプルなスネークゲームの具体的なコードを紹介します。具体的...

MySQL インフラストラクチャ チュートリアル: クエリ ステートメント実行プロセスの詳細な説明

序文私は以前から、SQL 文がどのように実行され、どのような順序で実行されるのかを知りたいと思ってい...

vxe-table を使用して vue で編集可能なテーブルを作成するプロセス

プロジェクトには、オンラインで編集する必要があるテーブルがあります。最初は、要素の el-table...

Windows10にMySQL5.6.35データベースを2つインストールする

次のように、Win10 での 2 つの MySQL5.6.35 データベースのインストールを記録しま...

MySQL の WriteSet 並列レプリケーションの簡単な分析

【歴史的背景】私は 3 年間 MySQL-DBA として働いてきましたが、MySQL が「基本的に利...

MySQL の選択、挿入、更新バッチ操作ステートメントのコード例

プロジェクトでは、データを操作するためにバッチ操作ステートメントが必要になることがよくあります。バッ...

Node.js での組み込みモジュールとカスタムモジュールの実装

1. コモンズCommonjsはNode.jsのカスタムモジュールですCommonjs 仕様は、Ja...

nginx設定ファイルの場所を見つける方法の詳細な説明

よく知らないサーバーの場合や、かなり前にインストールした場所を忘れてしまった場合、構成ファイルの場所...

Python Flask WeChat アプレットのログインプロセスとログイン API 実装コード

1. まずは効果を見てみましょうインターフェース要求によって返されるデータ: 2. 公式ログインフロ...

WeChatアプレットが計算機機能を実装

WeChatミニプログラムはますます人気が高まっています。多くの大学生が独学で学んでいるのも見てきま...

DD DT DLタグの使用例

通常は <ul><li> タグを使用しますが、dd タグと dt タグも便利...

mysql バックアップ戦略の実装 (フルバックアップ + 増分バックアップ)

目次設計シナリオ技術的なポイントサーバー情報準備フルバックアップスクリプト(Mysql-FullyB...

vue3.0 プロジェクトを素早く構築するための手順を完了する

目次1. 3.0をより適切にサポートするには、vue/cliのバージョンが4.5.0以上であることを...

スライダー効果を実装するミニプログラム

この記事の例では、スライディングブロック効果を実現するための小さなプログラムの具体的なコードを参考ま...