--------------------------------------------合并结果集SELECT UNION ----------------------------------------------------------
SELECT 'HAHA',1,52
UNION--联合,将查询的两个结果集合并,*结构一致才能合并到一起,结构不一致则会报错
SELECT '嘿嘿',1,52

SELECT 'HAHA',1,52
UNION all
SELECT '嘿嘿',1,52
--常见面试题:
--1.union 并集时,结果集要求结构一致
--2.union 和 union all 的区别:
--union 重复数据显示1次
--union all 完全显示数据,即使重复也多次显示。
---------------------------------------------子查询(添加多行)-------------------------------------------------------------------
USE Student
--A.添加多行数据:
--insert [into] name[(列的列表)] --values(值的列表),(值的列表)....
--将查询结果添加到表中(技术:子查询)

INSERT INTO lesson(ccode,cname,cnum)
SELECT'C001','C#编程基础',32 union
SELECT'C002','C#OOP',36 UNION
SELECT'C003','C#FRAME',36
SELECT * FROM lesson

-----------------------------------表的备份SELECT * INTO info_bak FROM info--------------------------------------
--实现表的备份(复制到其他表中
--1. 生成表 查询 ,select into
-- 准备:查询
USE Student
SELECT * --负责列的显示
FROM info --数据的来源
WHERE sname='赵明月' --查询的条件
SELECT sunmb FROM info

SELECT sname FROM info WHERE sname LIKE '%月%'
--egA :
--备份info表到info_bak中
--生成表 查询 select into 包含了两个功能:1.创建新表info_bak 2.插入查询数据
--1.info_bak 2.插入查询数据
SELECT * INTO info_bak FROM info
SELECT * FROM info_bak

--egB:
--备份空的info表到info_bak1中
SELECT * INTO info_bak1 FROM info WHERE sunmb=0
SELECT * FROM info_bak1
--egC:
--把数据备份到已存在的表中
--将 info 表中的女同学信息,备份到info_bak1中.
--info_bak1:插入数据(从info表中查出来的)
--操作(zichaxun)
INSERT INTO info_bak1
SELECT * FROM info WHERE sex=0

SELECT * FROM info_bak1

----------------------------------------------修改UPDATE--------------------------------------------------------
--修改:update
--语法:
--UPDATE tab_name SET colname=val,colname=val
--eg1.
UPDATE info SET address='北京海淀'
WHERE sname='赵月'
SELECT * FROM info

--eg2.
--将学号是4的同学的基本信息,修改成你本人的信息
UPDATE info SET sname='清瑞',sex=1,birthday='1992-01-01',address='山西永济程胡庄八组',tel='13520179329'
WHERE sunmb=4
SELECT * FROM info

--eg3.
--将tel是010开头的同学的地址改成北京市
UPDATE info SET address='北京市'
WHERE tel LIKE '010%'
SELECT * FROM info

------------------------------------------------删除DELETE-------------------------------------------------------
--删除:DELETE(行)
--语法:DELETE [FROM] tab_name
-------WHERE [筛选行] 如果不写,将删除所有行
--eg1.
DELETE FROM info WHERE sunmb=1
SELECT * FROM info

--eg2.
--清空 info(删除所有行)
DELETE info
SELECT * FROM info
--truncate table 截断表
--先DROP TABLE 再 CREATE TABLE 是DDL操作
--语法:
TRUNCATE table info
--(截断表和删除清空表都是删除所有行,保留表结构,but DELETE重新添加数据后ID是继续,TRUNCATE重新添加数据后ID是从1开始)
--(DELETE 橡皮擦 TRUNCATE 撕纸)

--****面试题:
--1. DELETE 删除表中所有数据是否记录日志,是否能恢复? DML
--记录日志是对行数据的删除行为,是可以恢复的.

--2. TRUNCATE TABLE 是否记录日志,是否能恢复? DDL
--如果是oracle:DDL操作不记录事务日志,不可恢复.
--如果是sqlserver:DDL操作被记录,记录的是数据页的操作,所以在sqlserver数据库能恢复

--3. 这两种操作如果是删除海量数据表格的数据,哪个效率更高?
--truncate table 效率高,因为它是以数据页为单位删除和记录日志,所有相对于delete来讲它的操作和记录次数少,所以效率会更高.
--删除数据的时候delete用的比较多,更加灵活.

009.增删查改语法(sql实例)的更多相关文章

  1. C# SQLite 创建数据库的方法增删查改语法和命令

    SQLite介绍 SQLite是一个开源.免费的小型RDBMS(关系型数据库),能独立运行.无服务器.零配置.支持事物,用C实现,内存占用较小,支持绝大数的SQL92标准. SQLite数据库官方主页 ...

  2. mysql数据库技术1——基本的增删查改的sql语句

    1.数据库语言的分类 DDL:数据库定义语言 data Definition language 用于创建.修改.和删除数据库内的数据结构,如: 1:创建和删除数据库(CREATE DATABASE | ...

  3. SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...

  4. 常用SQL语句(增删查改、合并统计、模糊搜索)

    转自:http://www.cnblogs.com/ljianhui/archive/2012/08/13/2695906.html 常用SQL语句 首行当然是最基本的增删查改啦,其中最重要的是查. ...

  5. SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码)

    SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码) 概述: 表由行和列组成,每个表都必须有个表名. SQL CREATE TABLE 语法 CREATE TABLE tabl ...

  6. EF各版本增删查改及执行Sql语句

    自从我开始使用Visual Studio 也已经经历了好几个版本了,而且这中间EF等框架的改变也算是比较多的.本篇文章记录下各个版本EF执行Sql语句和直接进行增删查改操作的区别,方便自己随时切换版本 ...

  7. jdbc的实例应用:增删查改实现

    //在jdbc中进行增删查改 //查看所有 public static void findAll() { String url = "jdbc:mysql://localhost:3306/ ...

  8. hibernate基础增删查改简单实例

    hibernate 基础理论知识网上很多,可以百度和google.这里不做多的介绍,以一个User表来开展例子 建一个web-project 我这里用了junit单元测试环境来进行增删查改的测试,别的 ...

  9. backbonejs mvc框架的增删查改实例

    一:开发环境 coffeescript和nodejs需要先安装,没装网上自己查安装步骤. 代码编写环境及esp框架下载: esp框架下载地址:https://github.com/nonocast/e ...

随机推荐

  1. How to Create and Use Facebook Messenger Codes (June 2019)

    How to Create and Use Facebook Messenger Codes (June 2019) By Gerardo Salandra  What is a Messenger ...

  2. codevs 1048/洛谷 1880:石子归并

    题目描述 Description 有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量和w[i]+w[i+1].问安排怎样的合并顺序,能够使 ...

  3. navicat破解版的下载与激活

    原文链接:http://www.cnblogs.com/djwhome/p/9289295.html 以前一直使用的老版的破解版的navicat,但是最近老是报错 而且连接还特别慢,今天终于不忙了额, ...

  4. Python openCV基础操作

    1.图片加载.显示和保存 import cv2 # 读取图片 img = cv2.imread("img1.jpg") # 生成灰色图片 imgGrey = cv2.imread( ...

  5. vimium快捷键修改

    vimium是一款很好用的浏览器插件,可以用键盘来进行一些操作. 需要在浏览器的扩展程序商店里下载相应的插件,然后可以右键点击插件打开选项进行个性化的配置. map+字母+功能描述 功能描述从opti ...

  6. [转帖]Oracle 起诉 Google 事件

    Oracle 起诉 Google 事件 https://www.cnblogs.com/panchanggui/p/9449842.html Oracle 是世界第二大软件公司 世界第一大DBMS公司 ...

  7. LINUX添加新的用户账号并赋予root权限

    一:添加新的用户账号使用 useradd 命令 语法:     useradd  选项  用户名 示例:      # 添加用户,设定登录目录:useradd -d  /home/admin -m a ...

  8. Centos7查看关闭防火墙

    查看防火墙状态: firewall-cmd --state 关闭防火墙 service firewalld start 开机启动 service firewalld stop 禁止开机启动 syste ...

  9. 【转载】java8 自定义TemporalAdjuster

    有的时候,你需要进行一些更加复杂的操作,比如,将日期调整到下个周日.下个工作日,或者是本月的最后一天.这时,你可以使用重载版本的with方法,向其传递一个提供了更多定制化选择的TemporalAdju ...

  10. (八)springMvc 的参数绑定

    参数绑定 将客户端传来的 key/value 数据,绑定到 Controller 参数的过程 : 这一过程发生在调用 处理器适配器 的时候,spring 会去调用 参数绑定 组件,我使用的版本(4.5 ...