peewee - 使用 peewee 将行展平为列
问题描述
数据库后端是 postgresqlon gcp。
我在一个表中有一组具有 id 的行。我正在尝试将其展平为具有多列的行。
CREATE TABLE public.lines
(
line_no int NOT NULL,
line_content character varying(60) COLLATE pg_catalog."default" NOT NULL,
parent_id integer NOT NULL,
)
有数据
(1,'content 1',parent1)
(2,'content 2',parent1)
(3,'content 3',parent1)
...
试图找出一个查询以将结果展平为列,
select line1, line2,line3
where parent='parent1'
这要怎么实现??谢谢!!!!
解决方案
这行不通。Sql 数据库是表格的。您不能随意返回 X 列宽的行。
你最好的选择是使用类似 Postgres 的东西array_agg
,它会返回一个数组。如果没有这一点,您可能会使用group_concat
或其他东西来生成逗号分隔的列表。
但这闻起来很可能是一个可怕的想法。
如果必须,只需在代码中进行折叠/展平。
推荐阅读
- java - 如何以编程方式将 pkcs12 文件导入 Java 密钥库
- ios - 如何在swift中将标题视图添加到每个自定义tableViewCells
- oracle - 编写一个读取特定表并根据读取的表填充另一个表的函数
- python - 根据另一列(熊猫)中的值计算一列中的天数差异
- python - 使用来自 Confluent Kafka 主题的数据并使用 Python 退出
- selenium - Selenium 中的 CSS 选择器 - 网页抓取
- javascript - 使用 JS DOM 显示列表
- python - 如何在 Python 中定义指向或引用列表成员的变量
- java - 带有 org_name、用户名和密码的 Spring Boot 登录页面
- graphql - prismic - 如何根据长度或 NOT NULL 进行 qgl 选择