我正在处理一个PHP PDO查询,我想检查一个JSON列是否与一个PHP数组有交集。
$classes = [1,2,3,4,5,6,7];
|---------------------|------------------|
| students | classes |
|---------------------|------------------|
| 12 | [1,3,6] |
|---------------------|------------------|
| 13 | [2,9,10] |
|---------------------|------------------|
| 14 | [9,8,10] |
|---------------------|------------------|
例如,在上述示例中,我需要获取所有至少存在一个班级的学生在
$classes = [1,2,3,4,5,6,7];
数组中,因此在这种情况下结果应该是:
|---------------------|------------------|
| students | classes |
|---------------------|------------------|
| 12 | [1,3,6] |
|---------------------|------------------|
| 13 | [2,9,10] |
|---------------------|------------------|
我试图将数组转换为字符串,然后使用"%like%"进行比较,但是由于'x,y,z'
不在'a,b,x,c'
中,所以它无法工作。
所以我想知道是否可以比较在MySQL中存储为json的两个数组和一个PHP数组。我需要在查询内部完成。
谢谢
$json_column = "['x','y','z']";
? - revo