【发布时间】:2018-03-29 08:37:57
【问题描述】:
我已经浏览了几篇帖子,但无法理解如何在 PostgreSQL 中实现以下目标
Table 1
---------
USER_ID NAME
1 User
2 Test
Table 2
--------
USER_ID WIDGET_ID WIDGET_CONFIG
1 1 abc
1 2 def
2 1 abc
2 2 def
我有两张桌子,我需要的是
- 从表 1 中选择,其中用户名 = "Test"
- 使用该 ID (2) 选择 USER_ID 为 2 且 WIDGET_ID 为 2 的小部件
- 例如将 widget_config 更新为“ghi”
我一直在使用 WITH 语句让自己陷入困境,也许是完全错误的方式
WITH res AS (
SELECT agent_id FROM tbl_agent WHERE agentlogin_id='2man'
)
SELECT tbl_agentwidgetconfig
WHERE agent_id=res.agent_id AND widget_id=5;
// Update record code?
如果有人能阐明执行此操作的正确方法,将不胜感激!
【问题讨论】:
-
POSTGRESQL 和 MYSQL 不一样 为什么你都标记了?
-
同时指定预期结果。
-
一个简单的 JOIN 可能就是你想要的。
-
@jarlh 结果只是指定记录的更新,示例会很有帮助
-
所以你有 两个 表。我数了三个,有 五个 不同的名称:{table1,table2, tbl_agent, widget_config,tbl_agentwidgetconfig}
标签: sql postgresql join sql-update