2016-08-04 5 views
0

Ich habe einen Tabellennamen 'Antwort' und wo Antwort gespeichert von einem Benutzer für eine Frage. Benutzer geben mehrere Antwort auf eine Frage.So Antwort speichern als Zeichenfolge in der Spalte "Antwort". Mein Tisch aussieht wie dieseFinden Sie die Anzahl der Anzahl eines Wortes in Spalte in jeder Zeile in mysql

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  

mag ich diesen Benutzer-ID wählen, deren Antwort 3 Wert (blau, weiß, grün) oder mehr als 3 (rot, blau, weiß, grün). Ich habe mit length Funktion versucht, aber es funktioniert nicht. Bitte helfen Sie mir.

+2

diese Frage Antworten mehrmals wurde http://stackoverflow.com/q/12344795/ 4323504 –

+0

@The Flash Hier finden Sie eine detaillierte Wortzählung – ankit

+0

Ja, Sie würden das in Ihre where-Klausel einfügen, okay, ich werde eine Antwort für Sie hinzufügen –

Antwort

0

Basierend auf dem Link i ealier auf meinem Kommentar zur Verfügung gestellt, können Sie erreichen, was Sie tun dies wollen:

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

vielen Dank .. – ankit

+0

du bist willkommen Kumpel ;-) –

+0

noch eine Frage, wenn statt (,) wenn wir etwas ASCII-Wert verwenden, so wie kann ich das tun? – ankit