Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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
Postgresql 如何从空结果集返回空json数组。博士后9.5+_Postgresql - Fatal编程技术网

Postgresql 如何从空结果集返回空json数组。博士后9.5+

Postgresql 如何从空结果集返回空json数组。博士后9.5+,postgresql,Postgresql,当我在数据库中找不到条目时,我尝试返回一个空数组[],但返回[{}]。如何仅在空结果集上返回[] const getUserProfile = (identifier, value) => { return db.oneOrNone (` select p.username, array_to_json(array_agg(json_strip_nulls(json_build_object('index', pp.index, 'filename', p

当我在数据库中找不到条目时,我尝试返回一个空数组[],但返回[{}]。如何仅在空结果集上返回[]

const getUserProfile = (identifier, value) => {
    return db.oneOrNone (`
    select 
    p.username,
    array_to_json(array_agg(json_strip_nulls(json_build_object('index', pp.index, 'filename', pp.filename)))) as pictures
    from person p
    left join (select person_id, index, filename from person_picture order by index) pp on p.person_id = pp.person_id
    where upper(cast(p.$1~ as text)) = upper(cast($2 as text))
    group by p.person_id`, [ identifier, value ])
}
我试试这个:

coalesce(array_to_json(array_agg(json_strip_nulls(json_build_object('index', pp.index, 'filename', pp.filename)))), '[]') as pictures
但它也不起作用。

只是一个大小写表达式,用于检查左连接的数据是否为空MAXpp.index为NULL在这种情况下以最小的开销:

选择 p、 用户名, 案例 当maxpp.index不为空时 数组到jsonarray数组到aggjson带空构建对象'index',pp.index',filename',pp.filename 其他的 “[]”:json 以图片结尾 来自t_person p 左连接从t_person_图片顺序中按p.person_id=pp.person_id上的索引pp选择person_id、索引、文件名 按p.username分组; 完整示例:

只是一个大小写表达式,用于检查左连接的数据是否为空MAXpp.index为NULL在这种情况下以最小的开销:

选择 p、 用户名, 案例 当maxpp.index不为空时 数组到jsonarray数组到aggjson带空构建对象'index',pp.index',filename',pp.filename 其他的 “[]”:json 以图片结尾 来自t_person p 左连接从t_person_图片顺序中按p.person_id=pp.person_id上的索引pp选择person_id、索引、文件名 按p.username分组; 完整示例: