我正在寻找一种通过查询连接组内字段的字符串的方法.例如,我有一张桌子:
ID COMPANY_ID EMPLOYEE
1 1 Anna
2 1 Bill
3 2 Carol
4 2 Dave
Run Code Online (Sandbox Code Playgroud)
我想通过company_id分组得到类似的东西:
COMPANY_ID EMPLOYEE
1 Anna, Bill
2 Carol, Dave
Run Code Online (Sandbox Code Playgroud)
mySQL中有一个内置函数来执行这个group_concat
是否可以在PostgreSQL中搜索每个表的每一列中的特定值?
Oracle 提供了类似的问题.
网站"如何计算MySQL数据库大小"给出了两个查询:
确定所有数据库的大小
SELECT table_schema "Data Base Name", SUM( data_length + index_length) / 1024 / 1024
"Data Base Size in MB" FROM information_schema.TABLES GROUP BY table_schema ;
Run Code Online (Sandbox Code Playgroud)
确定数据库中所有表的大小
SELECT TABLE_NAME, table_rows, data_length, index_length,
round(((data_length + index_length) / 1024 / 1024),2) "Size in MB"
FROM information_schema.TABLES WHERE table_schema = "schema_name";
Run Code Online (Sandbox Code Playgroud)
第一个查询正常工作,但第二个查询不生成结果集.它只显示没有任何行的字段的名称.如何修改第二个查询以正确显示数据库中表格大小的大小.
我试图使用动态SQL在postgres中运行一些查询.
例:
EXECUTE format('SELECT * from result_%s_table', quote_ident((select id from ids where condition = some_condition)))
Run Code Online (Sandbox Code Playgroud)
我必须查询一个表,其格式为result_%s_table,其中,我需要用另一个表替换正确的表名(一个id).
我收到了错误 ERROR: prepared statement "format" does not exist
获取数据库中所有表的行数的最有效方法是什么?
我正在使用 Postgres 数据库。
示例结果
table_name row_count
------------ -------------
some_table 1,234
foobar 5,678
another_table 32
...
Run Code Online (Sandbox Code Playgroud) 如何使用unix命令从csv文件中删除最后7行.
例如 -
abc
bffkms
slds
行开始1
行开始2
行开始3
行开始4
行开始5
行开始6
行开始7
我想从上面的文件中删除最后7行.请建议.
我想编写一个 Postgres 函数来遍历一堆表并对它们执行相同的过程。表由表名选择,以dmt_. 我想在每个表上做的过程非常简单,只需获取最近几天的最新记录数。如何获取具有匹配表名的表的问题。
我正在寻找一种方法来估算分区表中的行数。count(*)由于数据的大小,我想避免使用。我尝试使用这个:
SELECT reltuples FROM pg_class WHERE relname = 'my_table_name';
Run Code Online (Sandbox Code Playgroud)
但它总是返回zero。我假设这是因为该表已分区。
有没有办法用来pg_class/pg_inherits获取所有分区中的行数?
任何想法都非常感谢!