`
androider
  • 浏览: 751786 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Update多列

阅读更多

http://yidao620c.iteye.com/blog/371913

 

update 多列 时有如下几种选择

1.)教科书式写法

update t_table a

    set f1=(select f1 from testz b where a.id=b.id),

           f2=(select f2 from testz b where a.id=b.id),

           f3=(select f3 from testz b where a.id=b.id)

    where id=2; 

2.)教科书变种

update t_table a

    set (f1,f2,f3)=(select f1,f2,f3 from testz b where a.id=b.id)

    where id=2;

虽然道理和方法1一样,却省了不少事

3.)另类nest table写法

update (select f1,f2,f3 from t_table where id=2)

    set (f1,f2,f3)=(select f1,f2,f3 from testz b where id=2);

此方法虽然比2的代码 量要多一些,但是没有表连接,如果两个表都在id列有主键,速度应该较方法1和方法2快一些.

说明:update是一个耗回滚段,耗重做日志,耗时间,耗成本的操作,尤其是大表的多列update,如有必要应比较其与重新建表的效率.

分享到:
评论

相关推荐

    SQL UPDATE 更新语句用法(单列与多列)

    本文将详细介绍如何使用UPDATE语句来更新单列和多列的数据。 首先,UPDATE语句的基本语法如下: ```sql UPDATE 表名称 SET 列名称 = 新值 WHERE 条件; ``` 这里,`表名称`是你想要更新的表的名称,`列名称`是你要...

    数据库oracle for update of和for update的区别

    - 当涉及到多表联接时,`FOR UPDATE OF`可以更加灵活地控制锁定的列: ```sql SELECT * FROM Table1 a JOIN Table2 b ON a.pkid = b.pkid FOR UPDATE OF a.pkid; ``` 这条语句仅锁定`Table1`中的`pkid`列,`...

    LabVIEW多列列表框上色隔行变色.rar

    在LabVIEW编程中,多列列表框是一种常用的用户界面组件,用于显示多行多列的数据。这个"LabVIEW多列列表框上色隔行变色.rar"文件可能包含了一个示例或教程,教你如何实现多列列表框的行颜色交替,以提高数据可读性和...

    SQLITE数据库 UPDATE慢

    1. **索引缺失**:在执行UPDATE操作时,如果更新的列没有索引,数据库需要全表扫描来找到匹配的行,这在数据量大的情况下会非常慢。解决方案是为经常用于WHERE子句中的列创建索引,以提高查找效率。 2. **大数据量*...

    多列拖拽排序智能滚动

    "多列拖拽排序智能滚动"是一种提升用户体验的技术,它允许用户通过拖放操作对多列数据进行排序,同时在拖动过程中,如果接近屏幕边缘,页面会自动滚动,确保用户能持续看到可操作区域。这个功能的实现主要依赖于...

    oracle的update的五种方式

    标准 Update 语句是 Oracle 中最基本的更新语句,语法为:`UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值`。例如:`UPDATE t_join_situation SET join_state='1' WHERE year='2011'`。这种方式适用于更新...

    MySQL数据库中group by语句与update语句的用法研究.pdf

    * 可以按照一列进行分组,也可以按照多列进行分组。 * 在使用 group by 子句时,select 子句中的任意一列要么包含在聚合函数中,要么必须在 group by 子句中出现过。 例如,从 teacher 表中查询各个系男、女教师的...

    update语句

    你可以同时更新多个列,每个列名后面都跟着等号和新值。 3. **新值**:新值可以是常量、表达式或查询结果,只要它们符合列的数据类型。 4. **WHERE**:这是可选但非常重要的部分,用于指定哪些行应该被更新。如果不...

    PB并发控制与Row changed between retrieve and update详解

    PB并发控制机制是指在多用户同时访问数据库时,防止数据不一致和丢失的机制。PowerBuilder 提供了多种并发控制策略,包括Key Columns、Key and Updateable Columns、Key and Modified Columns 等。 其中,Key ...

    Huawei Update Extractor 0.9.9.5

    只需按下所需的列标题。 命令行: HuaweiUpdateExtractor提取输入输出[资料] HuaweiUpdateExtractor改装输入输出配置文件 简介 的的profiles.xml文件被用于识别在update.app文件中的文件。在update.app每个文件...

    rfc3311_sip_UPDATE.txt

    如果目标服务器支持`UPDATE`方法,则响应将包含一个`Allow`头字段,列出支持的所有方法,包括`UPDATE`。 #### `UPDATE`处理 - **发送`UPDATE`请求**: - 发送方在对话建立后,若需要修改会话参数(如增加或减少...

    update.zip

    比如,它可能包含一个名为“MANIFEST.MF”的文件,列出了zip文件中的所有条目及其属性,以及“UPDATE-SIG.PK7”或“UPDATE-SIG.PK8”签名文件,用于验证更新文件的完整性和安全性。此外,还有一个名为“RECOVERY.RSF...

    SQL UPDATE ACCESS

    3. **多字段更新**:在描述中提到的“多个字段内容实例”,意味着一次更新可能涉及表中的多个字段。例如,你可能需要同时更新用户的姓名和邮箱地址: ```sql UPDATE 用户表 SET 姓名 = '张三', 邮箱 = 'zhangsan@...

    ORACLE_UPDATE_语句语法与性能分析

    请注意,使用子查询更新多个列时,如果子查询返回多行,UPDATE语句会抛出错误。在上述示例中,由于每个`customer_id`在tmp_cust_city表中只有一个对应的记录,所以不会发生这种情况。然而,为了确保安全,最好在实践...

    Delphi7-Update1

    2. Readme.txt:这是安装或更新过程中的重要文档,通常会列出更新内容、安装指南、已知问题和解决方案等信息,是理解更新内容的关键。 3. SYSTEM32:这个目录通常包含系统级别的动态链接库(DLL)文件,对于Delphi ...

    s_update_tool

    Sublime Text支持各种编程语言,并且拥有强大的自定义能力,用户可以通过安装各种插件来扩展其功能,如代码高亮、代码折叠、多列编辑等。这些插件大多数可以从Package Control获取,这是一个方便的包管理器,允许...

    easyui datagrid中update后 getChanges获取不到

    一个update扩展方法 文档中一种是比较笨的方法 一次只能修改一个列而且受列编辑类型影响(比如number datetime)扩展一次编辑多列,不受编辑类型影响,没有编辑属性也可以。

    update sublime

    - **多列编辑**:用户可以在同一时间编辑多个位置,提高编辑效率。 - **分割视图**:支持同时打开多个文件并进行并排比较。 - **强大的快捷键**:Sublime Text提供了丰富的快捷键,使开发者能够快速执行各种操作...

    VFP语法Selet,delete,Update等语法,方便学习

    `SELECT` 命令用于从一个或多个表中检索数据。其基本语法如下: ```sql SELECT column_name(s) FROM table_name WHERE condition ``` - **列名(column_name(s))**:要选择的数据列。 - **表名(table_name)**:...

    SunWorkShop6update2InstallationGuide.pdf

    在提供的部分文档内容中,Sun Microsystems的版权信息、版权声明、第三方软件的版权声明、Sun Microsystems商标信息和SPARC商标信息被列出。例如,Sun Microsystems的版权声明指出了文档的发行日期为2001年7月,并且...

Global site tag (gtag.js) - Google Analytics