我有两张桌子:
CREATE TABLE public.objects
(
id bigint NOT NULL DEFAULT nextval('objects_id_seq'::regclass),
value text,
CONSTRAINT objects_pkey PRIMARY KEY (id)
);
CREATE TABLE public.relation
(
id1 bigint,
id2 bigint,
multiplier integer
);
对象表存储有关任何对象的数据,关系表通过其id存储对象之间的关系,乘数是关于关系的数据。
请帮助将请求显示为简单的表格,其中对象为列和行,乘数为关系值(列和行)
喜欢这个
将对象和产品作为对象和值作为乘数。
答案 0 :(得分:0)
@Fahad Anjum thanx ....
SELECT * FROM crosstab('select o.value, o1.value, r.multiplier::text FROM objects as o, objects as o1, relation as r
where
o.id=r.id1 and
o1.id = r.id2')
AS ct(com text, P1 text, P2 text, P3 text);
它的工作......