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

MySQLと正規表現を使用してドメイン名を見つける方法

    MySQLで 、正規表現は一致できますが、部分文字列を返すことはできません。

    SUBSTRING_INDEXを使用できます :

    SELECT  SUBSTRING_INDEX('www.example.com', '/', 1)
    

    ただし、プロトコルプレフィックスセーフではありません。

    プレフィックス付きとプレフィックスなしのURLを組み合わせて使用​​している場合 の、これを使用してください:

    SELECT  url RLIKE '^http://',
            CASE
            WHEN url RLIKE '^http://' THEN
                    SUBSTRING_INDEX(SUBSTRING_INDEX(url, '/', 3), '/', -1)
            ELSE
                    SUBSTRING_INDEX(url, '/', 1)
            END
    FROM    (
            SELECT   'www.example.com/test/test' AS url
            UNION ALL
            SELECT   'http://www.example.com/test'
            ) q
    


    1. 読み取り専用のOracleホーム

    2. INNER JOINは、EXISTSよりも優れたパフォーマンスを提供できますか

    3. MySQLバージョン管理-Subversion

    4. Oracleストアドプロシージャ内でのテキストの検索