【发布时间】:2013-04-13 23:42:02
【问题描述】:
我想编写一个 Postgres SQL 语句,说明查找颜色为 X 和亮度为 Y 的用户。如果该用户存在,则返回其所有行数据。如果没有,请创建一个新行并传递其他信息。这两个单独的语句会做这样的事情:
Select (color, brightness, size, age) FROM mytable WHERE color = 'X' AND brightness= 'Y';
如果没有返回任何东西,那么执行这个:
INSERT INTO mytable (color, brightness, size, age) VALUES (X, Y, big, old);
有没有办法将这些组合成一个查询??
【问题讨论】:
-
在
INSERT语句上看到postgresql 的RETURNING子句扩展,我最初希望可以使用联合在一个语句中将插入和选择结合起来,但我尝试了,不幸的是读写真的不可能这样混。
标签: sql postgresql