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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/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
Postgresql 在postgres中的表中显示具有多个值的记录_Postgresql_Insertion - Fatal编程技术网

Postgresql 在postgres中的表中显示具有多个值的记录

Postgresql 在postgres中的表中显示具有多个值的记录,postgresql,insertion,Postgresql,Insertion,期望输出- Emp_name|Hobbies|age|DOB ______________________________ LOPEZ |Football , Swimming , Fishing |19| 1999-05-11 在这个问题中,嗜好栏中有多条记录是逗号分隔的,但我希望在一行中(垂直)。 爱好的所有记录都应该是一条记录,就像一条记录中的多个值一样。 和,一行中的最后一个显示 请帮助我创建一个表以及在postgres DB中插入和获取记录的方法。因此,我们希望将您的“

期望输出-

Emp_name|Hobbies|age|DOB
______________________________
LOPEZ        |Football , Swimming , Fishing |19| 1999-05-11
在这个问题中,嗜好栏中有多条记录是逗号分隔的,但我希望在一行中(垂直)。 爱好的所有记录都应该是一条记录,就像一条记录中的多个值一样。 和,一行中的最后一个显示


请帮助我创建一个表以及在postgres DB中插入和获取记录的方法。

因此,我们希望将您的“爱好”字符串重新格式化为数组。您可以使用ARRAY_AGG()函数:

    CREATE TABLE new_hobbies AS
    SELECT
        name 
        , age 
        , DOB 
        , ARRAY_AGG(hobbies) AS hobbies
    FROM table
    GROUP BY
        name
        , age
        , dob 

但是,是的,我同意sticky bit的回答,这张表的标准化将是一个好主意。以及没有年龄值-以避免更新问题

我不建议使用逗号分隔的列表(也不建议使用数组(提示!))。有一个persons表、一个嗜好表和另一个将嗜好链接到某人的表。此外,年龄不应存储在persons表中,因为它显然取决于生日和当前时间。但除此之外:到目前为止你得到了什么?到目前为止你所拥有的到底有什么问题。请相应地编辑您的问题。因此,您可以帮助我创建这样一个表,并按照我解释的类似方式获取记录。所有爱好的价值观应该放在一起。我想要的结果不是那么复杂。爱好有多重价值。如何将其插入和取出。因此,您能否帮助我创建一个这样的表,并以与我解释的类似的方式取出记录。所有爱好的价值观应该放在一起。我想要的结果不是那么复杂。爱好有多重价值。如何插入和获取它。你能帮我在新表中插入一些值吗?如何在数组列中插入值?非常感谢Rupert。我得到了预期的结果。如果您能帮助我将输出表示为以下内容,我将非常有帮助:-`name | age | dob | cabiods--------------------------------------------------------------------------------------------------------------------++---------------------------------------------+------------------------------------------------------Rocky| 27 | 1991-04-17 |钓鱼| | | | | | | | | | | | | | | | | | | | | | | | |。你能帮我吗@鲁伯特