Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL, seleziona i record in base ai valori nell'array JSON

È possibile utilizzare la seguente soluzione, utilizzando JSON_CONTAINS :

SELECT * 
FROM Users
WHERE JSON_CONTAINS(interestIds, '2') = 1;

Il terzo parametro (opzionale) path ti dà la possibilità di utilizzare questa funzione solo su una parte specifica del tuo JSON valore. Quindi l'esempio seguente verifica se 2 è il secondo valore dell'array:

SELECT *
FROM test
WHERE JSON_CONTAINS(interestIds, '2', '$[1]') = 1;

demo su dbfiddle.uk