5

MYSQLでは、ドットが含まれる文字列を指定して、最後のドットの前にあるすべてのものを選択したいと思います。例:入力

www.java2s.com

出力:

www.java2s

substring_indexは逆のことをしているようです:

mysql> SELECT SUBSTRING_INDEX('www.java2s.com'、'。'、-1);
+ -------------------------------------------- +
| SUBSTRING_INDEX('www.java2s.com'、'。'、-1)|
+ -------------------------------------------- +
| com |
+ -------------------------------------------- +

これはできますか?

4

3 に答える 3

6
    select substr('www.java2s.sth.com', 1, (length('www.java2s.sth.com')- 
    length(SUBSTRING_INDEX(('www.java2s.sth.com'), '.', -1))-1));`
于 2012-05-19T05:51:21.943 に答える
5

あなたがここでより良い解決策を探しているなら、それは次のとおりです:

SET @domain = "www.java2s.com";
SELECT SUBSTRING(@domain, 1, LENGTH(@domain)-LOCATE('.', REVERSE(@domain)));
于 2016-04-29T17:17:21.507 に答える
1

これを使って

SELECT SUBSTRING_INDEX('www.java2s.com', '.', 2)

より一般的な

SELECT SUBSTRING_INDEX('www.java2s.com', '.', ( LENGTH('www.java2s.com') - LENGTH(REPLACE('www.java2s.com', '.', '')))  )
于 2012-05-19T05:07:48.947 に答える