2016-08-04 51 views
0

我有一個表名'answer',以及用戶給出的問題答案。 用戶給出一個問題的多個答案。所以回答保存爲'答案'欄中的字符串。 我的表看起來像這樣查找mysql中每一行中列的單詞數count

id userid questionid answer 

1 2  5   red,blue,white,green 

2 3  5   red,blue 

3 5  5   red,white 

4 6  5   blue,white,green 

5 7  5   red,blue,white,green  

我要選擇那些用戶標識,其答案3值(藍,白,綠)或3個以上(紅,藍,白,綠)。 我試過length函數,但它不起作用。 請幫幫我。

+2

這個問題已經回答多次http://stackoverflow.com/q/12344795/ 4323504 –

+0

@The Flash這找到一個合適的字數 – ankit

+0

是的,你會把它放在你的where子句中,好吧我會爲你添加一個答案 –

回答

0

根據我提供我的意見ealier鏈接,就可以完成你想要做的:

SELECT userid  
FROM AnswersTable 
WHERE ROUND ( 
     (LENGTH(answer) - LENGTH(REPLACE (answer, ",", "")))/LENGTH(",")   
     ) > 2 
+1

非常感謝你.. – ankit

+0

不客氣的朋友;-) –

+0

一個更多的問題,如果代替(,)如果我們使用一些ascii值,所以我怎麼能做到這一點? – ankit