首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于连接和子查询

关于连接和子查询
EN

Stack Overflow用户
提问于 2012-07-12 02:02:01
回答 3查看 107关注 0票数 1

我有以下查询,我正在使用..

代码语言:javascript
复制
select  * from app_subsys_param where assp_name like '%param_name%'

其中param_name是参数的名称。从这个查询中,我们将获得与该参数对应的assp_id。有了这个id,我们就可以在app_subsys_parmval表中查找该参数的值。

代码语言:javascript
复制
 update app_subsys_parmval  set aspv_value = 'true' where assp_id = id_val

现在不是单独启动这两个sql语句,而是将这两个语句合并为一个。有没有什么子查询或连接机制可以将它们合并到一个语句中,请告知

EN

回答 3

Stack Overflow用户

发布于 2012-07-12 02:07:04

您需要使用UPDATE .. FROM语法:

代码语言:javascript
复制
UPDATE app_subsys_paramval
SET aspv_value = 'true'
FROM app_subsys_param
WHERE app_subsys_param.id = app_subsys_paramval.id
    AND app_subsys_param.value LIKE '%param_name%';
票数 2
EN

Stack Overflow用户

发布于 2012-07-12 02:03:19

在update语句中使用子选择:

代码语言:javascript
复制
UPDATE app_subsys_parmval  
SET aspv_value = 'true' 
WHERE id_val = (SELECT assp_id 
                FROM app_subsys_param 
                WHERE assp_name LIKE '%param_name%')

请注意,我假设您的select **中有一些内容。

票数 1
EN

Stack Overflow用户

发布于 2012-07-12 09:24:32

看看MERGE语句。这是UPDATE … FROM的ANSI SQL:2003标准。

文档:

适用于DB2的

  • MERGE适用于DB2 z/OS 9.1

的Windows

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11438659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档