我有一个大数据库,需要从每个表中提取所有主键和外键。
我有 pgAdmin III。
有没有办法自动执行此操作而不手动查看每个表?
鉴于字符串:
'我认为 PostgreSQL 很漂亮'
我想对该字符串中找到的单个单词进行操作。本质上,我有一个单独的,我可以从中获取单词详细信息,并希望在此字典上加入该字符串的未嵌套数组。
到目前为止,我有:
select word, meaning, partofspeech
from unnest(string_to_array('I think that PostgreSQL is nifty',' ')) as word
from table t
join dictionary d
on t.word = d.wordname;
Run Code Online (Sandbox Code Playgroud)
这完成了我希望做的事情的基本原理,但它没有保留原始的词序。
我TYPE
在 PostgreSQL 中发现。我有一个TABLE TYPE
某些表必须尊重的(接口)。例如:
CREATE TYPE dataset AS(
ChannelId INTEGER
,GranulityIdIn INTEGER
,GranulityId INTEGER
,TimeValue TIMESTAMP
,FloatValue FLOAT
,Status BIGINT
,QualityCodeId INTEGER
,DataArray FLOAT[]
,DataCount BIGINT
,Performance FLOAT
,StepCount INTEGER
,TableRegClass regclass
,Tags TEXT[]
,WeightedMean FLOAT
,MeanData FLOAT
,StdData FLOAT
,MinData FLOAT
,MaxData FLOAT
,MedianData FLOAT
,Percentiles FLOAT[]
);
Run Code Online (Sandbox Code Playgroud)
我可以使用此模板创建表:
CREATE TABLE test OF dataset;
Run Code Online (Sandbox Code Playgroud)
我在API 中看到了很多选项,但我有点迷茫。我想知道是否可以将此类型分配给函数INPUT/OUTPUT
参数。
假设我有一个FUNCTION
调用process
,它从数据集中接收记录样本TABLE
source
,处理它们,然后返回TABLE
sink
具有相同TYPE
.
那就是我想知道是否有可能创建一个TYPE …
出于测试目的,我需要以任意(但可重现)的顺序从一组数据库表中获取一些数据。这个想法是我以后可以使用文本差异工具比较两次运行。有成语吗?
例如,我显然可以做一个:
SELECT * FROM table_with_N_columns ORDER BY column_1, ... , column_N
Run Code Online (Sandbox Code Playgroud)
我只是在问是否有一种惯用的方法来实现相同的效果(为了我的目的),而不必费心在 ORDER BY 子句中列出每一列。只要可以在查询的后续运行中重现,任何排序都将执行。
postgresql ×4
array ×1
datatypes ×1
foreign-key ×1
functions ×1
order-by ×1
parse ×1
pgadmin ×1
primary-key ×1
sorting ×1