Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.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
Sql json格式转换为varchar_Sql_Json_Postgresql - Fatal编程技术网

Sql json格式转换为varchar

Sql json格式转换为varchar,sql,json,postgresql,Sql,Json,Postgresql,我用postgresql编写查询,我将数据存储为一列的json格式,现在我需要json的特定值 消息数据:{apiMessageId:162fbbbe8f0e2a67,用户电子邮件:jack@liveonlinecloud.info,cloudId:1} 这是数据,我只想使用电子邮件 这是我的问题 SELECT id, process_id, process_state, cast(message_data->> \'userEmail\' AS VARCHAR) AS userEm

我用postgresql编写查询,我将数据存储为一列的json格式,现在我需要json的特定值

消息数据:{apiMessageId:162fbbbe8f0e2a67,用户电子邮件:jack@liveonlinecloud.info,cloudId:1}

这是数据,我只想使用电子邮件 这是我的问题

SELECT id, process_id, process_state, cast(message_data->> \'userEmail\' AS VARCHAR) AS userEmail, inserted_at, completed_at 
FROM realtimeincomingemailnotificationsqueue 
where api_message_id = '162fbbbe8f0e2a67';
->>文本获取JSON对象字段作为文本

重点矿山

所以我不知道为什么要将文本强制转换为varchar,但如果确实要,请使用

cast(message_data->> 'userEmail')::varchar

castmessage_data->>“userEmail”::varchar,但它是文本,所以我看不出有任何额外castmessage的需要。反斜杠在SQL中不会转义任何内容。你应该使用“userEmail”而不是“userEmail”