2014-11-21 23 views
2

我有這張表在其中存儲分數並基於每個類別。數據以這種格式存儲,「_bestscore_category1_user1」,統計的標題,類別的名稱和用戶。正如你所看到的,它們由下劃線分隔。在連接PHP變量的SQL語法中使用REGEXP

Table 
---------------------------------------- 
User      | Score 
_bestscore_category1_user1 | 10 
_bestscore_category1_user2 | 20 
_bestscore_category2_user2 | 20 
_bestscore_category2_user1 | 5 

所以問題是,我試圖查詢基於用戶的字段,我的SQL語句是這樣的。

SELECT meta_value from wp_postmeta WHERE meta_key REGEXP '_bestscore_([^=])_". $user."' 

正如你可以看到我們有變量$ user這是動態的,嘗試這個sql,給了我一個空輸出。我想知道我的sql是否不正確,我確實嘗試驗證它,但null是我得到的值。任何想法?

注:SQL語句,是不相關的表,

+0

嘗試將正則表達式更改爲_bestscore _([^ _] *)_' – hwnd 2014-11-21 04:17:51

回答

1

試試這個:

SELECT meta_value from wp_postmeta WHERE meta_key REGEXP '_bestscore_.*?_". $user."' 

這將解決你的問題。