@sql1 = ''; を設定します。 選択する GROUP_CONCAT(DISTINCT CONCAT( 'MAX(IF(field_id = ''', field_id、 ''', 値, NULL)) AS `', field_id,'`' ) ) @sql1 に FROM content_details; SET @sql1 = CONCAT('SELECT ', @sql1, ' FROM content_details GROUP BY content_id'); @sql1 を選択します。 PREPARE stmt FROM @sql1; EXECUTE ステートメント; DEALLOCATE PREPARE stmt;
上記のコード @sql1 変数では、一部の限定された文字のみを格納しています。ここでは、文字列を動的に連結しています。ストリングの正確な全長が将来どうなるかはわかりません。私の質問は、無制限の文字長を $sql1 変数に設定する方法です。ご意見をお聞かせください。