`

sql语句小技巧,联合主键

阅读更多
最近写sql语句时,碰到联合主键的问题。用“||”操作符解决了,算是一个小技巧吧。
正确的sql语句:
 update ecrejnl e set e.crejnlstate= '13' where (e.crejnlno || 'x.x'|| e.subjnlno) in
 (select (ec.crejnlno || 'x.x'|| ec.subjnlno) from ereqfile er , ecrejnlreqdetails ec where er.reqno = ec.reqno and er.reqno = '10108')   


其中 crejnl ,subjnlno 是 ecrejnl 表的联合主键,也就是说他们两个都是主键。

在写更新语句时,本打算这样写,但发现是错的。
错误的sql语句:
 update ecrejnl e set e.crejnlstate= '13' where 
e.crejnlno in (select ec.crejnlno from ereqfile er , ecrejnlreqdetails ec where er.reqno = ec.reqno and er.reqno = '10108')
and
e.subjnlno in (select ec.subjnlno from ereqfile er , ecrejnlreqdetails ec where er.reqno = ec.reqno and er.reqno = '10108')   





分享到:
评论

相关推荐

    sql 语句自学宝典

    ### SQL 语句自学宝典知识点详述 #### 第一天:SQL简介与历史 - **SQL简史**:SQL(Structured Query ...通过以上知识点的学习,读者可以逐步掌握SQL的基础语法和高级技巧,为进一步深入学习和应用SQL打下坚实的基础。

    sql语句练习题及答案

    PRIMARY KEY (Sno, Cno) -- 联合主键 ); ``` ### 二、数据的插入与删除 #### 插入数据 ```sql INSERT INTO Student (Sno, Sname, Ssex, Sage, Sdept) VALUES ('4001', '赵茵', '男', 20, 'SX'), ('4002', '杨华'...

    学生选课数据库SQL语句练习题(sql 语句)

    - `Degree`: 成绩,`Sno`和`Cno`组合为联合主键。 - **表(四)Teacher(教师表)** - `Tno`: 教师编号,为主键。 - `Tname`: 教师姓名。 - `Tsex`: 性别。 - `Tbirthday`: 出生年月。 - `Prof`: 职称。 - `...

    SQL语句备忘手册

    SQL语句备忘手册是一本全面涵盖SQL基本到高级操作的手册,对于SQL学习者和开发者来说,这是一份非常实用的参考资料。手册分为多个部分,详细介绍了SQL的各种语句和函数,帮助用户掌握数据库管理和数据操作的核心技能...

    sql的一些基础知识和小技巧

    1. **多表查询**:SQL允许对一张以上的表进行联合查询,这可能导致笛卡尔积,即所有可能的行组合。为了避免这种情况,通常会使用JOIN操作,如INNER JOIN、LEFT JOIN、RIGHT JOIN或FULL JOIN来明确指定表之间的关联。...

    21天迅速学会sql(比较完整的sql学习手册)

    - **背景**:SELECT是最常用的SQL语句之一,用于从数据库中检索特定的数据行或列。 - **一般的语法规则**:SELECT语句的基本格式是“SELECT column_name(s) FROM table_name WHERE condition;”,其中WHERE子句用于...

    数据库SQL教学视频百度云链接

    SQL语句类型 - **DDL(Data Definition Language)**:用于定义数据库对象的语言,包括`CREATE`、`ALTER`、`DROP`等命令。 - **DML(Data Manipulation Language)**:用于操作数据的语言,包括`INSERT`、`UPDATE`...

    SQL SQL2000 数据库使用指南 图解教程

    教程将讲解各种查询技巧,如联合查询、子查询、分组和排序、聚合函数等。同时,还会介绍视图的概念,它是预定义的查询结果,可以简化复杂的查询逻辑并提供数据安全性。 六、索引与性能优化 索引能显著提升数据检索...

    程序员的SQL金典.rar

     2.2 通过SQL语句管理数据表  2.2.1 创建数据表  2.2.2 定义非空约束  2.2.3 定义默认值  2.2.4 定义主键  2.2.5 定义外键  2.2.6 修改已有数据表  2.2.7 删除数据表  2.2.8 受限操作的变通解决方案 第3章 ...

    21天sqlserver自学通

    SQL中的条件语句主要包括IF...THEN...ELSE、CASE WHEN等,用于根据不同的条件执行不同的逻辑分支。 **运算符:** SQL支持多种运算符,包括算术运算符(+、-、*、/、%)、比较运算符(=、、<、>、、>=)、逻辑运算符...

    SQL21自学通.pdf

    ### SQL21自学通知识点概览 #### 一、SQL简介与历史 - **SQL简史**:SQL(Structured Query Language)是一种用于...通过学习这些内容,读者可以系统地掌握SQL的基础知识和高级技巧,为进一步深入学习打下坚实的基础。

    SQL——21天

    ### SQL21日自学通知识点概述 #### 第一天:SQL简介 - **SQL简史**:SQL(Structured Query Language)是一种用于管理关系...通过这十天的学习,读者将会掌握SQL的基础知识和常用技巧,为后续深入学习打下坚实的基础。

    SQL21天自学通.pdf

    ### SQL21天自学通.pdf 知识点详解 #### SQL基础入门概述 - **适用对象**:本书针对初学者,旨在通过系统的学习路径帮助读者掌握SQL的基本概念和实际操作能力。...- **建立关键字段**:确定表的主键和其他...

    sql入门经典 pdf文档

    存储过程是一组预编译的SQL语句,可以作为单独的对象在数据库中存储和执行。创建存储过程的基本语法如下: ```sql CREATE PROCEDURE 存储过程名 AS BEGIN -- SQL语句 END; ``` **2.11 存储过程参数** 存储过程...

    SQL(2).zip_Sql面试题

    在SQL(2).zip_Sql面试题这个压缩包中,主要包含了一份名为"SQL语句2.doc"的文档,这份文档很可能包含了SQL语言在面试中常见的问题和实用技巧。SQL,全称Structured Query Language(结构化查询语言),是用于管理和...

    SQL.Server.2008编程入门经典(第3版).part2.rar

    第3章 T-SQL基本语句 3.1 基本SELECT语句 3.1.1 SELECT语句与FROM子句 3.1.2 WHERE子句 3.1.3 ORDERBY子句 3.1.4 使用GROUPBY子句聚合数据 3.1.5 使用HAVING子句给分组设置条件 3.1.6 使用FORXML子句输出XML 3.1.7 ...

    sql学习自学通

    - 开发人员可以使用JDBC、ODBC等接口将SQL语句嵌入到应用程序中,实现与数据库的交互。 #### 六、SELECT语句的使用 - **基本语法**:`SELECT column_name(s) FROM table_name WHERE condition;` - **目标**:学习...

    SQL.Server.2008编程入门经典(第3版).part1.rar

    第3章 T-SQL基本语句 3.1 基本SELECT语句 3.1.1 SELECT语句与FROM子句 3.1.2 WHERE子句 3.1.3 ORDERBY子句 3.1.4 使用GROUPBY子句聚合数据 3.1.5 使用HAVING子句给分组设置条件 3.1.6 使用FORXML子句输出XML 3.1.7 ...

    Sql sever 教程 PPT

    "2 新建表.ppt"则深入到实际操作,讲解如何在SQL Server中创建表格,定义数据类型,设置主键和外键,以及理解约束的重要性,这些都是确保数据完整性和一致性的关键。 "3 数据管理.ppt"可能会涵盖数据的插入、更新和...

    SQL21天自学通

    流行的SQL开发工具包括但不限于MySQL Workbench、SQL Server Management Studio、Oracle SQL Developer等,这些工具提供了图形界面和代码编辑器,便于用户编写和执行SQL语句。 ### SELECT语句的使用 SELECT语句是...

Global site tag (gtag.js) - Google Analytics