[解決済み】MySQLとGROUP_CONCAT()の最大長について
2022-03-30 22:29:05
質問
私は
GROUP_CONCAT()
を MySQL クエリで使用して、複数行を 1 つの文字列に変換しています。
しかし、この関数の結果の最大長は
1024
文字になります。
を変更できることは重々承知していますが、パラメータである
group_concat_max_len
を使用すると、この制限を増やすことができます。
SET SESSION group_concat_max_len = 1000000;
しかし、私が使用しているサーバーでは、どのパラメータも変更することができません。前のクエリを使っても、設定ファイルを編集してもダメなのです。
そこで質問です。 複数行のクエリの出力を1つの文字列にする他の方法はないのでしょうか?
どのように解決するのですか?
CREATE TABLE some_table (
field1 int(11) NOT NULL AUTO_INCREMENT,
field2 varchar(10) NOT NULL,
field3 varchar(10) NOT NULL,
PRIMARY KEY (`field1`)
);
INSERT INTO `some_table` (field1, field2, field3) VALUES
(1, 'text one', 'foo'),
(2, 'text two', 'bar'),
(3, 'text three', 'data'),
(4, 'text four', 'magic');
このクエリは少し奇妙ですが、変数を初期化するために他のクエリを必要としません。また、より複雑なクエリに組み込むことができます。 これは、すべての 'field2' をセミコロンで区切って返します。
SELECT result
FROM (SELECT @result := '',
(SELECT result
FROM (SELECT @result := CONCAT_WS(';', @result, field2) AS result,
LENGTH(@result) AS blength
FROM some_table
ORDER BY blength DESC
LIMIT 1) AS sub1) AS result) AS sub2;
関連
-
コマンドでmysqlに接続中、'mysql'が内部または外部コマンドとして認識されない エラーは解決されました。
-
[解決済み] ERROR 1148: 使用されたコマンドはこのMySQLバージョンでは許可されていません。
-
[解決済み] MySQLから最後のN行を選択する
-
[解決済み] MySQLのgroup_concat_max_lenの最大許容値を教えてください。
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] MySQLのAUTO_INCREMENTをリセットする方法
-
[解決済み] MySQLの複数行を1つのフィールドに連結することはできますか?
-
[解決済み] TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXTの最大保存サイズ
-
[解決済み] MySQL型テキストの最大長
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「docker container run」は最低1つの引数を必要とする
-
MySQLとのPython統合でAttributeErrorが発生する: モジュール 'socket' には 'AF_UNIX' という属性がない
-
[解決済み] MySQLのforeachループ
-
[解決済み] 1030 ストレージエンジンからエラー28が発生しました
-
[解決済み] この操作を行うには、少なくとも1つのSUPER権限が必要です。
-
[解決済み] 「他のデータベースへのクエリを無視する」コマンドライン
-
[解決済み] エラー 1049 (42000)。不明なデータベース
-
[解決済み] 日付の挿入時にエラーが発生しました - 日付の値が正しくありません。
-
[解決済み] MySQLの更新datetimeフィールド
-
[解決済み] MySQLの結果をカンマで区切ったリストで表示