MySQL查詢支援正則數字嗎?

來源:互聯網
上載者:User
請問大家mysql查尋如何可以通過正則來查詢一個特定的數字啊?
例如我想查詢欄位中帶有115數位列,卻想排除1115或者11555555這種,mysql支援這種查詢嗎?

回複內容:

請問大家mysql查尋如何可以通過正則來查詢一個特定的數字啊?
例如我想查詢欄位中帶有115數位列,卻想排除1115或者11555555這種,mysql支援這種查詢嗎?

對比著mysql手冊寫了一下, 寫的很醜, 沒辦法, 沒找到\D, (|[^0-9X])也給我報錯, 唉. mysql5.5.24

mysql> select '115' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' result;+--------+| result |+--------+|      1 |+--------+1 row in set (0.00 sec)mysql> select '1150' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' result;+--------+| result |+--------+|      0 |+--------+1 row in set (0.00 sec)mysql> select '11150' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' result;+--------+| result |+--------+|      0 |+--------+1 row in set (0.00 sec)mysql> select 'a115a' regexp '^115$|^115[^0-9X]|[^0-9X]115$|[^0-9X]115[^0-9X]' result;+--------+| result |+--------+|      1 |+--------+1 row in set (0.00 sec)

不支援,效率太低,需要自己處理。

支援,不過效率不高。
SELECT mm,mm REGEXP '.星號[^1]115[^5].星號$' FROM test.a;

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.