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

データをmysqlの列に分割します

    ユーザー定義関数と呼ばれるカスタムMySQL関数を作成できます 検索する変数名と値を受け取り、必要に応じて行やIDなどを返すことができます。

    この関数では、読み取り専用カーソルのすべての行をループして、 SUBSTRING_INDEX() 値を個別に取得し、一致を確認します。

    さらにサポートが必要な場合は、お知らせください。

    詳細については、MySQLのマニュアルで文字列関数をここで確認してください

    関数の記述に役立つ可能性のある上記のリンクからのユーザーコメントからの抜粋:これにより、IPアドレス( "a.b.c.d")が4つのそれぞれのオクテットに分割されます:

    SELECT
    `ip` , 
    SUBSTRING_INDEX( `ip` , '.', 1 ) AS a,
    SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', 2 ),'.',-1) AS b, 
    SUBSTRING_INDEX(SUBSTRING_INDEX( `ip` , '.', -2 ),'.',1) AS c,
    SUBSTRING_INDEX( `ip` , '.', -1 ) AS d
    FROM log_table
    



    1. SQLServerサブクエリが複数の値を返しました。サブクエリが=、!=、<、<=、>、> =の後に続く場合、これは許可されません。

    2. 修正:MariaDBの「information_schemaの不明なテーブル「ロケール」」

    3. 長いバイナリ(生データ)文字列の保存

    4. SQLite Order By