SQL语句(十六)实现集合运算、对数据修改、数据表复制
(一)、集合运算(交、并、补)
--(1)Union 并运算
select Sname
from Student
UNION
select Tname
From Teacher --(2)INTERSECT 交运算
--查询学校中与老师重名的学生姓名
select Sname
From Student
INTERSECT --不会重复出现
Select Tname
From Teacher --另解
select Sname
From Student
Where Sname IN
(Select Distinct Tname
From Teacher) --(3)找出不选3号课的学生
select distinct Sno
From SC
where Sno not IN
( select Sno
From SC
Where Cno = ''
) -- 另解 使用EXCEPT
Select Sno
From SC
EXCEPT
Select Sno
From SC
Where Cno = ''
二、 数据修改
1. 数据增加
INSERT INTO <表名> ([列名])
VALUES (<值列表>)
实例
-- (1). 插入一条学生记录 (2017005, 张三, 男,21,数学系)
INSERT INTO Student
Values ('', '张三', '男', , 'MA') --没有说明的列,插入NULL
--说明的列数要等于值的个数
--如果在指定了某列不允许为空,则必须插入数据
--例2 出错, Sno is NOT NULL
INSERT INTO Student(Sname)
VALUES ('刘帅')
创建表
SELECT *
INTO newTable
From oldTable
实例
--例1 创建与Student同结构的表
Select *
Into Stu_tmp
From Student --注意: new Table 不能存在
--但是有附加命令
拷贝表 (新表 已经创建)
Insert Into newTable
Select *
From OldTable
多行插入
INSERT INTO <表名> [(<> [, <>....] ) ]
子查询
实例
--例1 拷贝表
--先在Student表中插入一条数据
INSERT INTO Student
Values ('', '豆子', '男', , 'CS', '1997-07-22')
select * from Student
--拷贝表全部数据 到 新表 (已经创建了新表)
Insert Into Stu_tmp Select * From Student --删除 Stu_tmp
delete From Stu_tmp --插入, 子查询
Insert Into Stu_tmp(Sno, Sname, Sex, Sage, Sdept)
select Sno, Sname, Sex, Sage, Sdept
From Student
2. 数据修改
--将学生95001的年龄改成22岁 --将所有学生的年龄增加1岁
UPDATE Student
Set Sage = Sage + -- 修改计算机全体人员成绩 为0
Update SC
Set Grade =
where Sno in
(Select distinct SC.Sno
From Student, SC
Where Student.Sno = SC.Sno and Sdept = 'CS')
SQL语句(十六)实现集合运算、对数据修改、数据表复制的更多相关文章
- sql语句删除由于无主键导致完全重复的数据方法
sql语句删除由于无主键导致完全重复的数据方法 select distinct * into #Tmp from t_column drop table t_column select * into ...
- MySQL数据库增删改查SQL语句(2018整理集合大全)
查看数据库 show databases; 使用数据库 use 数据库名; 创建数据库 CREATE DATABASE 数据库名; 删除数据库 DROP DATABASE 数据库名; 创建表 cre ...
- 抓取锁的sql语句-第六次修改
增加异常处理 CREATE OR REPLACE PROCEDURE SOLVE_LOCK AS V_SQL VARCHAR2(3000); --定义 v_sql 接受抓取锁的sql语句V_SQL02 ...
- Ibatis.Net 动态SQL语句学习(六)
在学习动态SQL语句之前,首先必须对条件查询有一定了解,先来学习如何向IBatis.Net的映射文件里传入参数吧. 一.条件查询 1.传递单个参数 如根据Id查询: <select id=&qu ...
- 多条SQL语句对查询结果集的垂直合并,以及表设计时如何冗余字段
需求引入 你有一个销售单表A 和一个销售单详情表B 和一个收付款记录表C A---->B 一对多 A---->C一对多 如果一个销售单有两个详情,三条收款记录 对一个销售单 我们想查询 ...
- Sql语句不能识别Go的解决办法(动态创建表的触发器)
问题来源 用sqlserver直接打开sql文本,执行没问题,但是当用Sqlcommand类执行cmdtext命令文本时总是失败报错. 原因分析及解决 用数据库直接执行sql语句没问题,甚至还可以用G ...
- SQL语句查询数据库的触发器、存储过程、视图以及表的SQL语句
Sql Server数据库用SQL语句查询方法如下: select name from sysobjects where xtype='TR' --所有触发器 select name from sys ...
- sql语句(一)— —判断是否有这条数据的优化
今天发现一个业务上的存储过程写的不够完善,和老板反应后,老板说你来完善吧,我:苦瓜脸~.说实话,我对SQL语句的熟练程度真的是不提也罢[捂脸],大概的判断流程我知道,但是真的让我自己写,还真得上网查查 ...
- SQL Server下ADO.NET 怎么获取数据库SQL语句INSERT,UPDATE,DELETE了多少行数据
ADO.NET 在发送SQL语句到SQL Server数据库后,怎么知道真正INSERT,UPDATE,DELETE了多少行数据呢? 使用SQL Server内置的全局变量@@ROWCOUNT即可,@ ...
- SQL语句大小写是否区分的问题,批量修改整个数据库所有表所有字段大小写
一.实例介绍 SQL语句大小写到底是否区分呢?我们先从下面的这个例子来看一下: 例: --> 创建表,插入数据: declare @maco table (number int,myvalue ...
随机推荐
- Java面试& HashMap实现原理分析
1. HashMap的数据结构 数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端. 数组 数组存储区间是连续的,占用内存严重,故空间复杂的很大.但数组的二分查找时间复杂度小,为O( ...
- Java 多生产者消费者问题
/* 生产者,消费者. 多生产者,多消费者的问题. if判断标记,只有一次,会导致不该运行的线程运行了.出现了数据错误的情况. while判断标记,解决了线程获取执行权后,是否要运行! not ...
- c# 判断两条线段是否相交(判断地图多边形是否相交)
private void button1_Click(object sender, EventArgs e) { //var result = intersect3(point1, point2, p ...
- java.time 时间和简单任务
java.time是jdk1.8才用的 时间管理 package com.test.time; import java.time.*; /** * Created by MY on 2017/8/7. ...
- vue开发完成后打包后图片路径不对
用vue做了一个小的移动端项目,从头到尾做下来,感觉自己好多东西都没弄清楚过.也学到了很多,已整理笔记在自己电脑上,但是比较零散,空了再来仔细整理整理. 于是,上周五模拟好数据(接口还未写),准备打包 ...
- 浅谈JavaScript预编译原理
这两天又把js的基础重新复习了一下,很多不懂得还是得回归基础,大家都知道js是解释性语言,就是编译一行执行一行,但是在执行的之前,系统会做一些工作: 1,语法分析: 2,预编译: 3,解释执行. 语法 ...
- spring接收json字符串的两种方式
一.前言 前几天遇到一个问题,前端H5调用我的springboot一个接口(post方式,@RequestParameter接收参数),传入的参数接收不到.自己测试接口时使用postman的form- ...
- D-query SPOJ - DQUERY(模板莫队)
题意: 给定一个序列,询问m次,每次求出区间 [ L,R ] 有多少个不同数字. 套模板就好了...但我不大明白....我的写法为什么不行...唉... #include <iostream&g ...
- hdu 5195 DZY Loves Topological Sorting (拓扑排序+线段树)
DZY Loves Topological Sorting Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 ...
- SSM的整合
框架的整合: 1. 依赖整合 aop的包: aspectweaver spring-aop spring核心: spring-context spring-web spring-webmvc spri ...