位置: IT常识 - 正文

【数据库】SQL语句(sql数据库语句基本语法)

编辑:rootadmin
【数据库】SQL语句 第三章 SQL

推荐整理分享【数据库】SQL语句(sql数据库语句基本语法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql数据库用法,数据库sql语句大全,数据库sql语句大全,sql数据库用法,sql数据库语句基本语法,数据库sql语句常见面试题,数据库sql语句大全实例,数据库sql语句大全实例,内容如对您有帮助,希望把文章链接给更多的朋友!

SQL(structured Query Language)

SQL概述SQL特点综合统一。高度非过程化。面向集合的操作方式。以同一种语法结构提供多种使用方式。语言简洁易学易用。主要版本SQL-89SQL-92 ,SQL2SQL-99 ,SQL3数据库结构

SQL语言是集DDL、DML和DCL于一体的数据库语言

基本表是独立存在的表,一个关系对应一个表

存储文件由一个或多个基本表和表的一个或若干索引组成,它的逻辑结构组成了关系数据库的内模式,物理结构对用户是屏蔽的

视图是虚表,真实的数据仍存放在基表中,数据库只存放视图的定义

分号问题

关于SQL语句句末加不加分号的问题_

在sql标准中是加分号 * 在程序中不加分号 * 在SQL Server中可以加,也可以不加数据类型

常用的数据类型:

varchar(n) 可变长度的字符串char(n) 固定长度的字符串int 整型数字,也可以写作integer视图View

视图就是基本表的一个虚拟子表

创建视图

-- 创建一个男生视图Create View Male as (select * from Student where Ssex='男');--select * from Male;

视图的更新

本质是更新基本表

SQL视图更新的可执行性

如果视图的select目标列包含聚集函数,则不能更新如果视图的select子句使用了unique或distinct,则不能更新如果视图中包括了groupby子句,则不能更新如果视图中包括经算术表达式计算出来的列,则不能更新如果视图是由单个表的列构成,但并没有包括主键,则不能更新

也就是说,如果当前更新视图的操作与更新基本表的操作有冲突则不能更新

对于由单一Table子集构成的视图,即如果视图是从单个基本表使用选 择、投影操作导出的,并且包含了基本表的主键,则可以更新

DDL语句

引导词:

Create(建立)Alter(修改)Drop(撤消)

模式的定义和删除,包括定义Database,Table,View,Index,完整性约束 条件等,也包括定义对象(RowType行对象,Type列对象)

DDL通常由DBA来使用,也有经DBA授权后,由应用程序员来使用

创建Create table创建数据库create database 数据库名;

数据库中的Schema和database区别是什么?_

取决于数据库供应商

(1)MySQL的文档中指出,在物理上,模式与数据库是同义的,所以模式和数据库是一回事。

(2)但是,Oracle的文档却指出,某些对象可以存储在数据库中,但不能存储在schema中。 因此,模式和数据库不是一回事。

(3)而根据这篇SQL Server技术文章SQLServer technical article,schema是数据库SQL Server内部的一个独立的实体。 所以,他们也不是一回事。

创建表CREATE TABLE <表名> (<列名> <数据类型>[ <列级完整性约束条件> ] [,<列名> <数据类型>[ <列级完整性约束条件>] ] … [,<表级完整性约束条件> ] );

<表级完整性约束条件>:涉及一个或多个属性列的完整性约束条件

如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上,否则既可以定义在列级也可以定义在表级。

修正alter table

撤销表 drop tabledrop table tablename #撤销表drop database 数据库名数据库的指定与关闭指定当前数据库use 数据库名关闭档期那数据库close 数据库名DML语句

引导词:

Insert

Delete

Update

Select

各种方式的更新与检索操作,如直接输入记录,从其他Table(由SubQuery 建立)输入

【数据库】SQL语句(sql数据库语句基本语法)

各种复杂条件的检索,如连接查找,模糊查找,分组查找,嵌套查找等

各种聚集操作,求平均、求和、…等,分组聚集,分组过滤等 

查询Select from

逻辑运算符用 and , or, not 来表示,

结果去重Distinct

在关系模型中要求元组不重复,但现实可以重复,也可以不重复

在Table中要求无重复元组是通过定义Primary key或Unique来保证的;

而在 检索结果中要求无重复元组, 是通过DISTINCT保留字的使用来实现的。

select distinct Cnum from SC;结果排序order by

默认升序asc

select Score from SC order by Score desc;结果计算

表达式-- 查询非同龄人的年龄差select S1.Sname as S1N , S2.Sname as S2N,S1.Sage-S2.Sage as '年龄差 'from Student S1 ,Student S2 where S1.Sage>S2.Sage;聚集函数

select count(*) from Student;select max(Sage) from Student;模糊查询 like

select * from Student where Sname like '%张%';select * from Student where Sname like '张_';多表联合查询 ,

如果重名可以用as来设置别名,as可省略

Select Select 列名 as 列别名 [ [, 列名 as 列别名] … ] From 表名1 as 表别名1, 表名2 as 表别名2, … Where Where 检索条件 ;子查询

相关查询:主查询的表不影响子查询非相关查询:主查询的表影响子查询in

select * From Student Where Sname in ('张三','李宁');Select Snum, Sname From Student Where Snum in ( Select Snum From SC Where Cnum = '001' ) ;some all

-- 找出年纪最大的Select Sname,Sage from Student where Sage >= all(Select Sage from Student);-- 找出年纪不是最小的Select Sname,Sage from Student where Sage > some(Select Sage from Student);

exists

存在返回true,在找到行后立即终止查询处理,因此,可以利用EXISTS运算符的此功能来提高查询性能。

对于主表中的每一行,子查询检查其他表中是否存在对应的行,如果有返回true

-- 找出学过数据库课程的同学的名字select Sname from Student where exists(select * from Course,SC where Course.Cnum=SC.Cnum and Course.Cname='数据库' and Student.Snum=SC.Snum);分组查询

-- 求每个学生的平均成绩select SC.Snum,Avg(Score) as '平均分' from Student,SC where Student.Snum=SC.Snum Group by SC.Snum;

没有包含在聚合函数或 GROUP BY 子句中的属性不能查询或在having中使用

分组过滤

select SC.Snum,Avg(Score) as '平均分' from Student,SC where Student.Snum=SC.Snum Group by SC.Snum having avg(SC.Score)>60;select intoSELECT *INTO Persons_backupFROM Person添加insert into

删除delete fromDelete From 表名 [ Where 条件表达式] ;更新update

DCL语句

引导词:

GrantRevoke

安全性控制:授权和撤消授权

关系代数交并差

有的DBMS不支持

-- 求学过002 或003 的学号,默认去重select Snum from SC where Cnum='002'UNION select Snum from SC where Cnum='003';select Snum from SC where Cnum='002'UNION allselect Snum from SC where Cnum='003';-- 求学过002和003 的学号select Snum from SC where Cnum='002'INTERSECT select Snum from SC where Cnum='003';-- 求没学过002学生的学号select distinct Snum from SC exceptselect Snum from SC where Cnum='002';空值

空值的处理

现行DBMS的空值处理小结

除is[not]null之外,空值不满足任何查找条件如果null参与算术运算,则该算术表达式的值为null如果null参与比较运算,则结果可视为false。在SQL-92中可看成 unknown如果null参与聚集运算,则除count(*)之外其它聚集函数都忽略null连接

连接类型(四选一)

inner join 内连接即关系代数中的θ-连接left outer join 左外连接保留左表的全部元组right outer join 右外连接full outer join 全连接

连接条件(三选一)

natural所有的公共属性相等on <连接条件>所有的公共属性满足一定的条件using (Col1,Col2,···Coln)部分属性select * from Student left outer join SC on Student.Snum=SC.Snum;select总结

本文链接地址:https://www.jiuchutong.com/zhishi/296121.html 转载请保留说明!

上一篇:[3D检测系列-PointRCNN]复现PointRCNN代码,并实现PointRCNN3D目标检测可视化,包含预训练权重下载链接(从0开始以及各种报错的解决方法)(3d检测软件)

下一篇:Node安装及配置(node安装配置环境变量)

  • 华为nova6支持多少瓦快充(华为nova6支持多少快充)

    华为nova6支持多少瓦快充(华为nova6支持多少快充)

  • 华为手机微信能上锁吗(华为手机微信能刷脸支付吗)

    华为手机微信能上锁吗(华为手机微信能刷脸支付吗)

  • 戴蓝牙耳机打电话对哪里说话(戴蓝牙耳机打电话)

    戴蓝牙耳机打电话对哪里说话(戴蓝牙耳机打电话)

  • Excel怎么填充(excel怎么填充数据)

    Excel怎么填充(excel怎么填充数据)

  • 电脑切换键盘是哪个键(键盘 切换)

    电脑切换键盘是哪个键(键盘 切换)

  • nova7微信视频怎么美颜(nova7微信视频怎么不清楚)

    nova7微信视频怎么美颜(nova7微信视频怎么不清楚)

  • 拼多多销量多久清一次(拼多多销量多久清零)

    拼多多销量多久清一次(拼多多销量多久清零)

  • 5a快充线是什么(什么叫5a快充数据线)

    5a快充线是什么(什么叫5a快充数据线)

  • 小米怎么关闭自动更新系统升级(小米怎么关闭自动更新系统)

    小米怎么关闭自动更新系统升级(小米怎么关闭自动更新系统)

  • 虚拟发货什么意思(虚拟发货什么意思咸鱼)

    虚拟发货什么意思(虚拟发货什么意思咸鱼)

  • 苹果充电器充了一会就停了(苹果充电器充了一下就不充了)

    苹果充电器充了一会就停了(苹果充电器充了一下就不充了)

  • qq撤回消息时间限制(微信消息超时了怎么才能撤回)

    qq撤回消息时间限制(微信消息超时了怎么才能撤回)

  • 小米8换屏后经常重启(小米8换了屏幕以后乱跳怎么回事)

    小米8换屏后经常重启(小米8换了屏幕以后乱跳怎么回事)

  • 微信发朋友圈怎么改位置(微信发朋友圈怎么屏蔽部分好友)

    微信发朋友圈怎么改位置(微信发朋友圈怎么屏蔽部分好友)

  • webmomo什么意思(movw什么意思)

    webmomo什么意思(movw什么意思)

  •  p30桌面天气怎么设置(p30天气怎么显示在桌面)

    p30桌面天气怎么设置(p30天气怎么显示在桌面)

  • 半导体存储器按照存取方式可以分为(半导体存储器按工作方式可分为RAM存储器和ROM存储器)

    半导体存储器按照存取方式可以分为(半导体存储器按工作方式可分为RAM存储器和ROM存储器)

  • 笔记本大写按哪个键(笔记本大写字母怎么按)

    笔记本大写按哪个键(笔记本大写字母怎么按)

  • ctrl+a是什么快捷键(ctrl+a什么快捷键)

    ctrl+a是什么快捷键(ctrl+a什么快捷键)

  • oppoa57如何打开虚拟键(oppoa57如何打开usb)

    oppoa57如何打开虚拟键(oppoa57如何打开usb)

  • iqooneo有没有红外线(iqooneo5有红外和nfc吗)

    iqooneo有没有红外线(iqooneo5有红外和nfc吗)

  • 青岛地铁支持琴岛通电子卡吗(青岛地铁站可以办琴岛通吗)

    青岛地铁支持琴岛通电子卡吗(青岛地铁站可以办琴岛通吗)

  • ipadmini4可以用pencil吗(ipadmini4可以用笔吗)

    ipadmini4可以用pencil吗(ipadmini4可以用笔吗)

  • win10回收站在哪(win10回收站在哪里找到)

    win10回收站在哪(win10回收站在哪里找到)

  • pcfmgr.exe是什么进程 pcfmgr进程查询(pc是什么文件)

    pcfmgr.exe是什么进程 pcfmgr进程查询(pc是什么文件)

  • Win7旗舰版系统在A4纸上排版打印5寸照片的方法(win7旗舰版系统鼠标不能动了)

    Win7旗舰版系统在A4纸上排版打印5寸照片的方法(win7旗舰版系统鼠标不能动了)

  • 微信小程序的【运行机制】解读(微信小程序的视频怎么下载)

    微信小程序的【运行机制】解读(微信小程序的视频怎么下载)

  • 共享主机和 WordPress 主机之间的区别(共享主机和vps)

    共享主机和 WordPress 主机之间的区别(共享主机和vps)

  • 减免税额和免税额一样吗
  • 本期收入和本期减除费用
  • 小规模纳税人出口可以退税吗
  • 其他应收款增加银行存款减少的原因
  • 间接费用分配方法不包括哪些
  • 企业入库流程图
  • 股票发行的佣金计入什么科目
  • 辅导期纳税人会计处理
  • 嵌入式软件产品增值税即征即退
  • 差旅费出差补助如何计算天数
  • 公司注销固定资产清理需要开票吗
  • 收到发票怎么记账
  • 个人劳务费发票可以委托其他人去开吗
  • 合伙企业如何计算缴纳个人所得税
  • 质量成本包括哪两个成本
  • 本月收到外汇怎么做账
  • 工程预算调整的主要内容
  • 无偿取得票据的持票人不享有追索权
  • 年终汇算清缴怎么计算
  • 专利技术使用权转让属于特许权使用费
  • 企业代收代支的非税收入需要缴税吗?
  • 事业单位调整以前年度盈余的收入时会计分录
  • 高速公路过路费税率是多少
  • 广告业文化事业建设费2023标准
  • 客户汇公司账户怎么汇
  • 对外捐赠款属于什么会计科目
  • 冲未开票收入怎么做分录
  • 企业所得税预缴可以不交吗
  • 累计折旧 减少
  • php自定义变量
  • ipados15什么时候发布
  • 发票未报送怎么回事
  • 期间费用为什么叫期间费用
  • 其他应付款的会计科目
  • 怎么确定
  • 海外供应商贸易平台
  • 魅族路由器mini刷机
  • jquery 批量删除
  • 研发和技术服务税率3%
  • 增值税专用发票丢了怎么补救
  • 生成stl基本过程
  • vue0
  • linux系统操作教程
  • IndexError: invalid index of a 0-dim tensor. Use `tensor.item()` in Python
  • 补缴去年的税款会计分录
  • 四舍五入的弊端
  • 收到购置税完税通知书
  • python搞自动化
  • 建设工程审计报告包括哪些内容
  • 个人所得税年底退税 可以退多少
  • 筹建期购买办公用品
  • 企业收购合并中土地问题
  • 排污收费制度在排污费征收方面存在的问题
  • 车船税征收范围有
  • 捐赠支出税前扣除比例
  • 文化事业建设费会计分录
  • 企业收到的财政性补贴要交企业所得税吗
  • 差旅费算人工费吗
  • 租金收入确认收入时间
  • mysql 定点数和浮点数
  • win10安装完成后需要做哪些设置
  • 预装win8的电脑
  • 电脑蓝屏bios设置教程
  • win8 无线网
  • xp系统必备软件
  • created directory cfg怎么办
  • 四步清理手机垃圾的方法
  • windows xp 7 10
  • win81蓝屏重启故障
  • ubuntu系统启动流程
  • vsftpd.log
  • unity de
  • GLSL Tessellation Shader的编程入门介绍
  • cocos3.0
  • 微信小程序实现轮播图
  • linux生成网卡配置文件
  • bat判断变量的值
  • javascript的dom
  • jquery中选择器有哪些
  • Python通过行和列提取数据
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设