sql >> データベース >  >> RDS >> Mysql

カンマ区切りの文字列をmysqlの行に分割します

    任意の数字のサブクエリを使用して文字列を分割します。valsの代わりに「1,2,3」を使用できます。

    SELECT
      DISTINCT SUBSTRING_INDEX(SUBSTRING_INDEX(vals, ',', n.digit+1), ',', -1) val
    FROM
      tt1
      INNER JOIN
      (SELECT 0 digit UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3  UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6) n
      ON LENGTH(REPLACE(vals, ',' , '')) <= LENGTH(vals)-n.digit;
    

    動作を確認



    1. ユーザーの地理的位置を毎分サーバーに送信する

    2. InnoDBテーブルのサイズが予想よりもはるかに大きいのはなぜですか?

    3. MariaDB ROWNUM()の説明

    4. PHPフォームのチェックボックスと未定義のインデックス