Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按键名称获取项目计数_Php_Mysql_Json_Laravel - Fatal编程技术网

Php 按键名称获取项目计数

Php 按键名称获取项目计数,php,mysql,json,laravel,Php,Mysql,Json,Laravel,我在MySQL数据库中有这些记录。在JSON类型列上 Record1: {"images": ["image.jpeg", "image.jpeg"]} Record2: {"images": ["image.jpeg", "image.jpeg", "image.jpeg"]} Record3: {"images": ["image.jpeg"]} 如何通过JSON属性的键名(在我的示例中是“images”)获取图像总数 我试图实现与运行下面的查询相同的功能,但是从images键计算数组项

我在MySQL数据库中有这些记录。在JSON类型列上

Record1: {"images": ["image.jpeg", "image.jpeg"]}
Record2: {"images": ["image.jpeg", "image.jpeg", "image.jpeg"]}
Record3: {"images": ["image.jpeg"]}
如何通过JSON属性的键名(在我的示例中是“images”)获取图像总数

我试图实现与运行下面的查询相同的功能,但是从images键计算数组项

SELECT
  `field`,
  count( * ) AS total 
FROM
  `table_name` 
WHERE
  `condition`
GROUP BY
  `something`
这将为您提供以下结果:

field      total
------------------
field1       5
field2       2
我正在努力实现的目标:

 field      total
 -----------------
 images       6
表结构 表数据
确定是否可以使用此查询:

SELECT type,JSON_LENGTH(media) FROM `tabl4` group by type
从这里检查执行情况:

尝试:

选择 `类型`, 总和 JSON_长度为`媒体','$.images' `媒体` 从…起 `表名称` 分组 `类型`;
请参阅。

您想要通过php还是通过查询来实现它?只需mysql查询就可以了,thanksIt并没有做应该做的事情。我只想得到“媒体->图像”中按类型分组的所有图像的计数。不,实际上是8,因为有最后一条记录,它是类型1,有2个图像。我认为这个查询是通过检查演示来理解的。我不明白为什么它不能在我的本地机器上工作。这可能是因为媒体列在我的本地服务器上是JSON类型的吗?另外image.jpeg只是一个例子。数据将具有不同的图像名称和不同的扩展名,而此查询将无法处理该名称。我想是的,尝试将其更改为varchar或text-its-betterYes,这就是我想要的。非常感谢你!