数据库语言——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 ...
随机推荐
- Modelsim, Debussy联合仿真Xilinx
http://wenku.baidu.com/view/8363d40003d8ce2f006623e9.html 另外一个博客 生成Xilinx库 先调用ISE的simulation librar ...
- 使用spring中遇到"java.lang.NoClassDefFoundError: org/aopalliance/intercept/MethodInterceptor"问题
项目中缺少aopalliance的jar包,下载一个相应的jar加入项目中就可以解决问题. 下载链接:http://www.java2s.com/Code/Jar/a/Downloadaopallia ...
- JS-ES6语法运用
import导入模块,js的模块化开发 浏览器使用ES6模块化语法(使用module时js代码自动运行严格模式): <script type="module" src=&qu ...
- Go_goroutine初识
package main import ( "fmt" ) func main() { /* 一个goroutine打印数字,另外一个goroutine打印字母,观察运行结果.. ...
- logstash output到kafka记录与总结( No entry found for connection 2)
简述 本文记录logstash的output配置为kafka的过程.这里是简单的例子,输入为stdin,本文主要目的是为了记录在这次配置过程中遇到的问题和解决的过程及总结. 关于kafka集群的搭建可 ...
- iOS 10.3+ 动态修改 App 图标
支持系统: iOS 10.3+ tvOS 10.2+ Apple 官方文档 官方 API: @interface UIApplication (UIAlternateApplicationIcons) ...
- unittest 改装框架ascii 排序执行用例,按照自己书写先后顺序执行
设计思路: 获取成员变量class.__dict__.keys() filter过滤符合要求成员,由于3.x成员dict属性是支持有序的 # coding=utf-8import unittestfr ...
- leetCode练题——7. Reverse Integer
1.题目: 7. Reverse Integer Given a 32-bit signed integer, reverse digits of an integer. Example 1: I ...
- java截取小数点后两位
String a = "123.3445776";int i = a.indexOf(".");System.out.println(a.substring(0 ...
- 页面布局 Paddiing Row Column Expanded 组件详解
一.Paddiing 组件 padding EdgeInsetss 设置填充的值 child 组件 return Padding( padding: EdgeIn ...