如何在MySQL/MariaDB中以JSON形式返回长文本字段

如何在MySQL/MariaDB中以JSON形式返回长文本字段,mysql,node.js,mariadb,Mysql,Node.js,Mariadb,我有一个products表,其中我将产品图像路径存储为JSON字符串(MariaDB中的LONGTEXT类型),但是,当我使用Node.js查询数据库中的产品列表并将数据发送到客户端时,它将图像路径作为字符串而不是数组对象接收 问:有没有办法告诉MySQL/MariaDB将LONGTEXT字段作为JSON返回,或者我需要在Node.js中创建一个helper函数来完成这项工作?您可以尝试使用convert()JSON 试验 我试过这样做:selectconcat(“”,CONVERT(imgs,

我有一个products表,其中我将产品图像路径存储为JSON字符串(MariaDB中的LONGTEXT类型),但是,当我使用Node.js查询数据库中的产品列表并将数据发送到客户端时,它将图像路径作为字符串而不是数组对象接收


问:有没有办法告诉MySQL/MariaDB将LONGTEXT字段作为JSON返回,或者我需要在Node.js中创建一个helper函数来完成这项工作?

您可以尝试使用convert()JSON

试验


我试过这样做:
selectconcat(“”,CONVERT(imgs,JSON),“”)
但是它在
JSON附近抛出错误1064),“”)
您使用的是哪个版本的mysql???…我使用了5.7I使用了10.4.6-MariaDBcheck如果可以进行concat示例测试..如果可以..那么检查imgs列内容中是否有有效的JSON..如果测试不起作用,那么您的db版本不支持转换为JSON
 CONVERT( your_long_text_col,  JSON)
select concat('"', CONVERT( '{"id": 1, "name": "Monty"}',  JSON), '"');