MySQL 文字列の連結、インターセプト、置換、および検索位置。 よく使用される文字列関数:
1. 文字列の連結1.1 CONCAT(s1,s2,...)関数接続パラメータによって生成された文字列、連結される 1 つ以上の内容を返します。いずれかが NULL の場合、戻り値は NULL になります。 SELECT CONCAT('現在の時刻:',NOW()); -- 出力結果: 現在の時刻: 2019-01-17 11:27:58 1.2 CONCAT_WS(x,s1,s2,...) 関数複数の文字列を連結し、各文字列の間に x を挿入した文字列を返します。 SELECT CONCAT_WS(';','pan_junbiao's blog','KevinPan','pan_junbiao'); -- 出力: pan_junbiao's blog;KevinPan;pan_junbiao 2. 文字列の傍受2.1 SUBSTRING(s,n,len) および MID(s,n,len) 関数2 つの関数は同じ効果があり、文字列 s から n 番目の文字から始まり、長さ len の文字列を返します。 SELECT SUBSTRING('Hello, welcome to pan_junbiao's blog',8,14); -- 出力結果: pan_junbiao's blogSELECT MID('Hello, welcome to pan_junbiao's blog',8,14); -- 出力結果: pan_junbiao's blog 2.2 LEFT(s,n)、RIGHT(s,n)関数前者は文字列 s の左端から n 文字を返します。後者は文字列 s の右端から n 文字を返します。 SELECT LEFT('Hello, welcome to pan_junbiao's blog',7); -- 出力結果: Hello, welcome to SELECT RIGHT('Hello, welcome to pan_junbiao's blog',14); -- 出力結果: pan_junbiao's blog 3. 文字列の置換3.1 INSERT(s1,x,len,s2)関数位置 x から始まる部分文字列を文字列 s2 の len 文字に置き換えた文字列 s1 を返します。 SELECT INSERT('Hello, welcome to A Biao's blog',8,2,'pan_junbiao'); -- 出力: Hello, welcome to pan_junbiao's blog 3.2 REPLACE(s,s1,s2)関数文字列 s 内の文字列 s1 のすべての出現を文字列 s2 に置き換える文字列を返します。 SELECT REPLACE('Hello, welcome to A Biao's blog', 'A Biao', 'pan_junbiao'); -- 出力: Hello, welcome to pan_junbiao's blog 4. 文字列クエリの位置4.1 LOCATE(str1,str)、POSITION(str1 IN str)、INSTR(str,str1)関数3 つの関数は同じ機能を持ち、文字列 str 内の部分文字列 str1 の開始位置 (n 番目の文字から始まる) を返します。 SELECT LOCATE('pan_junbiao','こんにちは、pan_junbiao のブログへようこそ'); -- 出力: 8 SELECT POSITION('pan_junbiao' IN 'こんにちは、pan_junbiao のブログへようこそ'); -- 出力: 8 SELECT INSTR('こんにちは、pan_junbiao のブログへようこそ','pan_junbiao'); -- 出力: 8 4.2 FIELD(s,s1,s2,...)関数文字列 s の最初の一致の位置を返します。 SELECT FIELD('pan_junbiao','pan_junbiao's blog','KevinPan','阿标','pan_junbiao'); -- 出力: 4 補足: mysql 文字列の位置を見つける instr() および LOCATE() 文字列検索関数 INSTR(文字列、部分文字列)文字列 str 内の部分文字列が最初に出現する位置を返します。これは、引数の順序が逆になっていることを除いて、LOCATE() の 2 つの引数形式と同じです。 mysql> INSTR('foobarbar', 'bar') を選択します。 -> 4 mysql> INSTR('xbar', 'foobar') を選択します。 -> 0 LOCATE(substr,str)、LOCATE(substr,str,pos)最初の構文は、文字列 str 内の部分文字列 substr の最初の出現を返します。 2 番目の構文は、位置 pos から始まる文字列 str 内の部分文字列 substr の最初の出現を返します。 substr が str に含まれていない場合、戻り値は 0 になります。 mysql> SELECT LOCATE('bar', 'foobarbar'); -> 4 mysql> SELECT LOCATE('xbar', 'foobar'); -> 0 mysql> SELECT LOCATE('bar', 'foobarbar',5); -> 7 この関数はマルチバイト文字をサポートし、引数の少なくとも 1 つがバイナリ文字列である場合にのみ大文字と小文字が区別されます。 POSITION(substr IN str)文字列 str 内の部分文字列 substr が最初に出現する位置を返します。部分文字列 substr が str に存在しない場合、戻り値は 0 になります。 mysql> SELECT POSITION('bar', 'foobarbar'); -> 4 mysql> SELECT POSITION('xbar', 'foobar'); -> 0 効率テスト `o_soft` から * を選択 WHERE LOCATE('d200',tid2)>0 MySQL は空の結果セット (ゼロ行) を返します。 (クエリには 0.0050 秒かかりました) `o_soft` から * を選択 WHERE INSTR('d200',tid2)>0 上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。 以下もご興味があるかもしれません:
|
<<: CSSセレクタを使用してラベルスタイルを設定するサンプルコード
>>: Vueはデジタル千単位区切り形式をグローバルに実装します
1. 準備例: 2 台のマシン: 192.168.219.146 (マスター)、192.168.21...
コードをコピーコードは次のとおりです。 html {オーバーフロー: 非表示; }体{オーバーフロー...
北西を見ると私の故郷はどこにあるでしょうか。南東の満月を何度見たことがあるでしょうか。月が再びゆっく...
コードをコピーコードは次のとおりです。 <選択> <オプション値="&q...
React の PC 版は Amap を使用するようにリファクタリングされました。情報を検索したと...
目次背景サーバーの依存関係バックエンド構成クロスドメインバックエンド構成の静的リソースアクセスではk...
今日は、CSS3 の transition-delay 属性のデフォルト値 0 に単位がないのは無効...
序文403 クロスオリジン エラーが発生しNo 'Access-Control-Allow-...
目次1 つの Redis 設定ファイル2 Dockerコマンドの開始3 docker-compose...
目次パーサーとプリプロセッサクエリオプティマイザーMySQL クエリの最適化には、解析、前処理、最適...
Linux におけるルーティングとルーティング テーブルとは何ですか?ルーティングのプロセスとは、ネ...
この記事では、CentOSでのMySQLの完全アンインストールについて記録しています。具体的な内容は...
目次保守可能なコードとは何ですか?コード規約1. 読みやすさ2. 変数と関数の命名3. 透過的な変数...
この記事では、スライドタブを実装するためのjQueryの具体的なコードを参考までに紹介します。具体的...
目次MVCとMVVMの違い前述のMVCC の概要長所と短所MVVM概要MVVM 実装者 — Vue ...