数据库语言——SQL——基础部分——初篇
概述
SQL全称为Structured Query Language,是关系型数据库的语言标准,它并不与特定的数据库商品类型有关,例如Mysql,Oracle,DB2等等都可以使用SQL语言,它与特定的数据库类型有关,一般情况下,它只适用于关系型数据库。
在不断的学习和使用SQL的过程之后,将SQL的内容归纳为三个部分,第一部分为SQL基础,主要介绍SQL的DDL,DML,DCL各种语句的用法,以及一些基础的概念。第二部分为SQL的技巧和调优,主要分析SQL的查询语句,如何合理的设计数据库表,提高SQL的编写技巧和速度。第三部分为SQL的差异,主要介绍SQL在各种不同数据库商品中的差异。
在编写此文时,作者对自身能力的评估为第一部分比较自信,第二部分掌握一般,第三部分比较生疏。所以本文大部分的内容为SQL基础,之后不断学习会不断的更新文档。
书籍推荐
在开始正文之前,推荐几本优秀的SQL书籍。
在学习SQL基础时,可以看《Head First SQL》和《Learning SQL》
在学习SQL技巧时,可以看《SQL cookbook》和《SQL pocket Guide》
想更深入的了解SQL基础时,可以看《SQL In Nutshell》
非常欢迎大家分享自己看过比较优秀的SQL书籍。
内容介绍
接下来进入本文的正题,本文将SQL的基础内容分为五个部分。
- 第一部分介绍SQL语句的使用,因为作者使用的是MySQL数据库,在开始之前,首先介绍一下MySQL的数据类型。之后介绍DDL,DML,DCL的用法。
- 第二部分介绍SQL查询语句,SQL查询语句分为简单的查询语句,关联查询,分组查询,子查询,集合论的查询。此部分内容也是最复杂的一部分内容。
- 第三部分介绍SQL的函数,首先将SQL函数分为内置函数与自定义函数,然后根据数据类型将SQL内置函数分为字符串函数,数字函数,日期函数,布尔函数,特殊类型NULL函数等等。
- 第四部分介绍角色和权限,介绍如何使用SQL语句进行角色,用户,权限相关的操作。
- 第五部分介绍一些特殊的关系型数据库对象,SQL如何应用于事务,如何应用于约束,如何应用于索引等等。
数据库语言——SQL——基础部分——初篇的更多相关文章
- 数据库学习---SQL基础(二)
数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) 上篇复习的sql的增删改查,and ,or ,>=, <=,!=等逻辑运算符,还有in ...
- 数据库学习---SQL基础(一)
数据库学习---SQL基础(一) 数据库学习---SQL基础(二) 数据库学习---SQL基础(三) SQL(struct query language)结构化查询语言:一种专门与数据库通信的语言, ...
- 数据库语言sql
数据库语言SQL SQL的形式 交互式SQL 一般DBMS都提供联机交互工具 用户可直接键入SQL命令对数据库进行操作 由DBMS来进行解释 嵌入式SQL 能将SQL语句嵌入到高级语言(宿主语言) 使 ...
- Oracle数据库之SQL基础和分支循环
一.SQL基础语言 DECLARE --声明 a ); --变量或对象 BEGIN a:='小明';-- := 表示给一个变量赋值 dbms_output.put_line(a); --输出用 dbm ...
- 聊聊数据库~3.SQL基础篇
上篇回顾:聊聊数据库~SQL环境篇 扩展:为用户添加新数据库的权限 PS:先使用root创建数据库,然后再授权grant all privileges on 数据库.* to 用户名@"%& ...
- 数据库语言-SQL
SQL语言的功能概述 DDL语句引导词:Create(建立),Alter(修改),Drop(撤销) DML语句引导词:Insert,Delete,Update,Select DCL语句引导词:Gran ...
- Oracle数据库之SQL基础(二)
一.约束 ❤ 1.约束概述 约束作用: (1)定义规则 (2)确保完整性:包括数据的精确性.可靠性.以确保数据不会出错,或者尽量减少出错. 约束的类型: (1)非空约束 (2)主键约束 (3)外键约束 ...
- Oracle数据库之SQL基础(一)
主要内容:用户与表空间:表与约束:查询语句. 一.概述 Oracle安装:访问官网,下载 二.用户与表空间 在安装Oracle时在开始菜单里可以用sql puls登录oracle. ★1.系统用户 s ...
- python--11、数据库及SQL基础
常用命令记录 查看库中所有表的引擎 SHOW TABLE STATUS FROM `center_main_db`; 还有一个更简洁,查询cmol_system_db库所有表的存储引擎\ SELECT ...
随机推荐
- bugku 前女友
首先打开链接然后会发现 照常情况下进行分析 查看源码然后发现 在这一串文字后还有一个链接然后 发现链接被隐藏了然后我们将link 删除就会显示出来点开新的连接 然后会发现这个 (仔细一看好像是php中 ...
- 创建Vue项目及其内容分析
利用 vue 脚手架开发企业级应用 # 全局安装 vue-cli npm install --global vue-cli # 创建一个基于 webpack 模板的新项目 ...
- Codeforces Round #577 (Div. 2) 题解
比赛链接:https://codeforc.es/contest/1201 A. Important Exam 题意:有\(n\)个人,每个人给出\(m\)个答案,每个答案都有一个分值\(a_i\), ...
- keil(MDK)错误记录
1.a parameter list without types is only allowed in a function definition(没有类型的参数列表只允许在函数定义中使用) 2.Er ...
- numpy-sum函数
看一个例子就懂了 c = array([[[0, 1, 2, 0, 1, 2]], [[0, 1, 2, 0, 1, 2]]]) print('{0}\n'.format(c.shape)) prin ...
- vue 路由传参 以及获取参数
1.通过query实现: <router-link :to="{ name:'home',query:{id:1} }">跳转页面</router-link> ...
- js递归生成树形下拉菜单
需求:我需要把一个单表的数据转换成类似菜单那种如图所示:我呢需要把这个菜单树放入到下框里面去如图所示: 下面是实现思路:1.第一步1.1var afTypeJson=${afTypeJson}// 这 ...
- vue基础总结
Vue语法: new Vue({ //挂载: el: '#app', //初始化数据: data: {}, //监听 data 的数据变化: watch: { todos: { //深度监视 hand ...
- UA池 代理IP池 scrapy的下载中间件
# 一些概念 - 在scrapy中如何给所有的请求对象尽可能多的设置不一样的请求载体身份标识 - UA池,process_request(request) - 在scrapy中如何给发生异常的请求设置 ...
- ASP.NET Core搭建多层网站架构【8.1-使用ViewModel注解验证】
2020/01/29, ASP.NET Core 3.1, VS2019 摘要:基于ASP.NET Core 3.1 WebApi搭建后端多层网站架构[8.1-使用ViewModel注解验证] 使用V ...