2012-05-18 32 views
0

我對語法方面和mysql方面的正則表達式都不太熟悉。什麼是這個mysql的正則表達式查詢

你能幫我寫一個查詢嗎?

我有一個數據庫表,一列有三種數據庫存號,名稱和價格。我感興趣的是股票號碼。我沒有創建這個數據庫設計,請耐心等待。

數據的格式如下:

[#3346] - $3,500.00, some name

我必須從這個表中匹配給定的庫存數量即3346它取的記錄。

SELECT * FROM table_name WHERE col_name REGEXP ? 

我該怎麼做?

+0

什麼是表引擎類型? – diEcho

回答

2

你想:

WHERE col_name REGEXP '^\\[#3346\\]' 

服用,在部分:

  • ^表示字符串
  • \[的開始是一個文字[字符(但在字符串中的\自身需求與另一個逃脫\
  • #3346是文本字符串#3346
  • \]是文字字符](但字符串中的\內本身需要與另一\逸出)

因此上述表達式,其與文字[#3346]開始的字符串相匹配。因爲它發生,爲此,你甚至不需要使用正則表達式作爲simple pattern match會做的伎倆:

WHERE col_name LIKE '[#3346]%' 

然而,即使你沒有創建數據庫,我強烈建議您將的數據結構拆分爲col_name三列。