MYSQL 5.0系で
カラムAに以下のURLが入ってます。
http://******/aaa/123.html
http://******/aaa/212.html
http://******/aaa/555.html
こちらを、SQL文のSELECTの結果で
123
212
555
というように取得したいのですが
どのようなクエリを記述すればいいでしょうか?
http://******/などは可変します。
最終的に、VIEWを作成したいので、
データを取り出して、phpなどのプログラムで
行うなどの、回答は入りません。
皆様の、お力を貸して下さい。
SUBSTRING_INDEX 関数を二つ使って抽出!
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX('http://******/aaa/123.html', '/', -1), '.', 1)
SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(a, '/', -1), '.', 1) FROM テーブル
詳しくは下記参照。
http://dev.mysql.com/doc/refman//5.1/ja/string-functions.html
http://dev.mysql.com/doc/refman/4.1/ja/string-functions.html
こんな感じでしょうか。
処理時間がかかりそうな気がして心配です。
SELECT SUBSTRING(カラムA, (LOCATE('/aaa/', カラムA) + 5), (LOCATE('.html', カラムA) - LOCATE('/aaa/', カラムA) - 5)) FROM テーブル名 WHERE カラムA like '%/aaa/%html';
結構な処理ですね。
こちらも試してみたいと思います。
ありがとうございます。
こんな関数があるんですね。
ありがとうございます。