MySQLに保存したURL(URI)からドメイン部分だけを抜き出す方法。いろいろやり方はあるが、SUBSTRING_INDEX()を使うのが一番簡単(スマート)そう。
SELECT SUBSTRING_INDEX('http://mysql.com/foo', '/', 3)スキーム(httpとかhttpsの部分)も取りたいなら、SUBSTRING_INDEX()をもう一つかましてやる。
↓
http://mysql.com
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('http://mysql.com/foo', '/', 3), '/', -1)最後の引数がマイナスの場合、デリミタ(2つ目の引数で指定した文字)を右から数える。
↓
mysql.com
頻繁に使うならユーザー関数にすると使いやすいかも。そんなに使わないか。
参考:MySQL AB :: MySQL 4.1 リファレンスマニュアル :: 6.3.2 文字列関数
関連記事:
MySQLのプレペアードステートメントはメモリレベルか?
MySQLのデフォルトのストレージエンジンがInnoDBになる
MySQL Query Browser がとても便利
PostgreSQLのUPDATEの実態と、MySQLを早くする方法
0 件のコメント:
コメントを投稿