Sql 比较postgres中的uuid
假设我在Postgres中创建了两个表,其中Sql 比较postgres中的uuid,sql,postgresql,uuid,Sql,Postgresql,Uuid,假设我在Postgres中创建了两个表,其中UUID作为主键。这些UUID是使用Postgres中的UUID-ossp模块生成的: 然后,我想基于上述两个表创建一个视图: CREATE OR REPLACE VIEW foobar AS ( SELECT fooid, barid FROM foo, bar WHERE f.idFoo = b.idBar -- AND some other condition -- ); 问题:如何比较UUID类型?
UUID
作为主键。这些UUID
是使用Postgres中的UUID-ossp
模块生成的:
然后,我想基于上述两个表创建一个视图:
CREATE OR REPLACE VIEW foobar AS (
SELECT fooid, barid
FROM foo, bar
WHERE f.idFoo = b.idBar
-- AND some other condition --
);
问题:如何比较UUID
类型?不要比较UUID,您希望加入它们:
CREATE OR REPLACE VIEW foobar AS (
SELECT f.foo, b.bar, f.id
FROM f JOIN b USING (id)
WHERE -- some other condition --
);
要在不同的列上联接,可以:
CREATE OR REPLACE VIEW foobar AS (
SELECT f.foo, b.bar, idFoo, idBar
FROM f JOIN b ON (idFoo = idBar)
WHERE -- some other condition --
);
(当然,因为idFoo=idBar,所以没有必要在第二次选择中同时包含这两个选项)。如果主键命名不同(更新了问题),情况会怎样?Q:“我怎么做X?”A:“这是你怎么做Y的。”所以。
CREATE OR REPLACE VIEW foobar AS (
SELECT f.foo, b.bar, idFoo, idBar
FROM f JOIN b ON (idFoo = idBar)
WHERE -- some other condition --
);