MySQL で単一のフィールド内の複数の値を分割および結合する方法

MySQL で単一のフィールド内の複数の値を分割および結合する方法

複数の値を組み合わせて表示

これで、図1から図2に示す要件が揃いました。

図1

図2

どうやってやるんですか?

次のSQL:

SELECT id,GROUP_CONCAT(DISTINCT str) as str from test GROUP BY id

関連する知識ポイント

グループ連結

GROUP_CONCAT([DISTINCT] 接続するフィールド [ASC/DESCソートフィールドによる順序] [区切り文字 'separator'])

複数値の分割表示

ここでの要件は最初の例とは逆になります。

図3より

図3

図4へ

図4

これは少し複雑です。まず、図に示すように、str の処理、つまり文字 + ',' の 1 対 1 の処理を​​事前に行っています。次に、MySQL にはシーケンス機能がないため、シーケンス テーブルを事前に用意する必要があります。最大 id は、単一フィールドの最大項目数よりも大きくする必要があります。

配列表

具体的なSQLは次のとおりです。

t.id、SUBSTRING_INDEX(SUBSTRING_INDEX(str、'、'、s.id)、'、'、-1) を str として選択します。 
	test2 tから 
		シーケンス s を s.id<(LENGTH(t.str)/2+1) に結合します。 
			t.idで注文

関連する知識ポイント

SUBSTRING_INDEX(文字列、区切り文字、カウント)

SUBSTRING_INDEX(処理する文字列、区切り文字、カウント)

count が正の数の場合、左から右に数えて N 番目の区切り文字の左側にあるすべてのコンテンツになります。

負の数の場合は、右から始まり、N 番目の区切り文字の右側にあるすべての内容がカウントされます。

要約する

これで、MySQL の単一フィールドの複数値の分割と結合処理に関するこの記事は終了です。MySQL の単一フィールドの複数値の分割と結合に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQLクエリ時にフィールドにデフォルト値を割り当てる方法
  • MySQL コマンドラインでテーブルにフィールドを追加します (フィールド名、空かどうか、デフォルト値)
  • MySQL テーブル フィールドのデフォルト値の設定 (グラフィック チュートリアルと詳細に注意)
  • MySQL で複数のフィールドを連結する詳細な例
  • MySQL 8.0の新機能、隠しフィールドの詳細な説明
  • MySQLのどのフィールドがインデックスに適しているかについての簡単な説明
  • mysql 更新ケース更新フィールド値が固定されていない操作
  • MySQLでレコードを変更する場合、更新操作フィールド = フィールド + 文字列
  • 複数のフィールドを変更するためのMysql更新の構文の詳細な分析
  • MySQLフィールドのデフォルト値を設定する方法

<<:  HTML テーブルタグチュートリアル (44): テーブルヘッダータグ

>>:  VUE ユニアプリライフサイクルに関する簡単な説明

推薦する

フロートとBFCをクリアするCSSメソッド

イギリスBFC: ブロック書式設定コンテキストBFCレイアウトルール内箱は縦方向に次々に配置されます...

複数のサーバーにNginxリバースプロキシを実装する方法

Nginx は複数のサーバーをリバース プロキシします。つまり、nginx に異なるリクエストを送信...

ElementUIはカスケードセレクタを実装します

この記事の例では、カスケードセレクターを実装するためのelementUIの具体的なコードを参考までに...

CSS でレスポンシブ レイアウトを実装する方法

CSS でレスポンシブ レイアウトを実装するレスポンシブレイアウトは非常にハイエンドで難しいように思...

Docker ベースの nginx ファイル サーバーを構築する方法と手順

1. このマシンに新しい設定ファイルdocker_nginx.confを作成します。 サーバー{ 7...

MySQL 8.0 が起動できない 3534 の解決策

MySQL 8.0 サービスを開始できません最近、 cmdで MySQL サービスを起動するときに遭...

Navicat for MySql ビジュアルインポート CSV ファイル

この記事では、参考までに、Navicat for MySql の CSV ファイルのビジュアルインポ...

Ubuntu システムに Theano と Keras をインストールする方法

注: システムは Ubuntu 14.04LTS、32 ビット オペレーティング システムです。Py...

Vueの監視方法のケースの詳細な説明

Vueでの監視方法時計知らせ名前: 監視する属性に同じ名前を付ける必要があります。 1. 機能Vue...

MySQL 8.0.16 winx64 のインストールと設定方法のグラフィックチュートリアル

最近、データベースについて学び始めました。最初にやったことは、データベースとは何か、データベースとデ...

MySQLで指定した時間前にレコードを自動的に削除する方法

イベントについて: MySQL 5.1 では、イベントの概念が導入され始めました。イベントは「時間ト...

曇り空のアイコン効果を実現する純粋な CSS

効果効果は以下のとおりです​実装のアイデアbox-shadow プロパティを使用して、複数の灰色の円...

MySQLの文字列インターセプト関連関数の概要

この記事では、MySQL の文字列インターセプト関連の機能を紹介します。具体的な内容は以下のとおりで...

Nodeはkoa2を使用してシンプルなJWT認証方式を実装します

JWT の紹介JWTとは正式名称はJSON Web Tokenで、現在最も人気のあるクロスドメイン認...

Vueリクエストインターセプターの設定方法の詳しい説明

以下の手順に従ってください1. request.jsコンテンツ: http リクエスト インターセプ...