2014-05-01 32 views
0

我有以下列表:如何搜索使用正則表達式的行MySQL中的值大於X

  • 世紀互聯PURE寬帶8M
  • 世紀互聯PURE寬帶8M
  • 世紀互聯PURE寬帶8M
  • 世紀互聯高速互聯網20M/896K
  • CENTURYLINK高速互聯網12M/896K
  • CENTURYLINK高速互聯網7M/896K
  • 世紀互聯高速上網12M/896K
  • 世紀互聯高速互聯網7M/896K
  • 世紀互聯高速上網12M/896K

我需要檢索所有具有互聯網的行速度大於8M。我使用下面的查詢

SELECT * FROM century_link.orderdetail where offer_name REGEXP '([1-8]\d+|8)' 

以上選擇收益大於8m的速度,但如果你看到我有一排是7M/896K,但不能退換此行,因爲7M小於8M。

我該如何更改我的選擇以避免此行被退回?

任何幫助表示讚賞。

謝謝。這裏

+1

我建議做數據的預處理和製作的另一浮動列多少兆比特(或者不管你選擇),這樣你就不會需要運行一個複雜的正表達每一次,你可以索引它,如果有必要。 – Sam

回答

2

的問題是:

正則表達式匹配的數量896

這一條可能會更好: ([1-8] \ d + M | 8M | 9M)

你可以用這個打了一下:http://regex101.com/