我在mysql数据库上创建了一个字段“array”,响应如下:link当数据持久化时,如下所示:
{i:0;s:4:"3410";i:1;s:4:"3415";i:2;s:4:"3459";i:3;s:4:"3460";i:4;s:4:"3492";}
但是在sql查询中找不到,我尝试了一些东西,但是还是找不到
SELECT * FROM classified_zones cz WHERE cz.locations_ids IN ( 3492 )
qlzsbp2j1#
您可以动态构建一个条令查询,类似于:
$qb->select('cz') ->from('myBundle:ClassifiedZones', 'cz') ->where('cz.locationsIds LIKE :id') ->setParameter('id', '%:'.strlen($id).':"' . $id . '"%' );
最后的sql查询应该类似于ł乌卡斯的回应。
f87krz0w2#
不要使用“不熟悉的格式”,mysql支持原生json数据类型。请参见:https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html#function_json-包含例如:位置\u id=“[1,2,33492]”
SELECT cz.* FROM classified_zones cz WHERE JSON_CONTAINS(cz.locations_ids, 3492)
zy1mlcev3#
以下查询应该有效:
SELECT * FROM classified_zones cz WHERE cz.locations_ids LIKE '%s:4:"3492";%'
3条答案
按热度按时间qlzsbp2j1#
您可以动态构建一个条令查询,类似于:
最后的sql查询应该类似于ł乌卡斯的回应。
f87krz0w2#
不要使用“不熟悉的格式”,mysql支持原生json数据类型。
请参见:https://dev.mysql.com/doc/refman/5.7/en/json-search-functions.html#function_json-包含
例如:
位置\u id=“[1,2,33492]”
zy1mlcev3#
以下查询应该有效: