您的位置:首页 > 数据库

SQL学习笔记【1】

2021-01-02 16:50 597 查看

学习的过程主要参考以上这本书《SQL必知必会》以及一些网络教程,小白们也可以去借阅学习。


了解SQL


SQL(sequel)是

Structured Query Language(结构化查询语言)的缩写。SQL是一种专门用来与数据库沟通的语言。

了解数据


数据就是数值,也就是我们通过观察、实验或计算得出的结果。数据有很多种,最简单的就是数字。数据也可以是文字、图像、声音等。


了解数据库


数据库可视为电子化的文字柜,用来存储数据。

在数据库中:

是一种结构化的文件,可以用来存储某种特定类型的数据。

关键点:存储在表中的数据是同一种类型的数据或清单。

表由组成,列存储表中某部分的信息。

是表中的一个记录,表中经常有一个列或多列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键

实例操作


准备工作

  1. 电脑安装了mysql和navicat

  2. 保证mysql服务器已经启动

  3. 打开navicat界面,新建一个连接,正常输入用户名和密码登录。再创建一个数据库,取名为bzbh。


下载文件

-- Sams Teach Yourself SQL in 10 Minutes
-- http://forta.com/books/0672336073/
-- Example table population scripts for MySQL

下载教材书中的例表,网址如上。

下载的文件夹中有create.txt和populate.txt文件。



打开命令列界面

命令列界面在navicat的工具菜单栏下面。

连接数据库,使用命令use bzbh;



    mysql> use bzbh;    Database change

在数据库中创建表

将create.txt和populate.txt文件中的内容先后复制到命令列界面。


用命令语句查看一下创建成功的表结构

语句:desc 表名;

 或者双击点开左侧栏的表:



检索数据

在navicat界面上方菜单栏中点击查询,并新建查询。,我们将从简单的SQL语句讲起。

检索单列

输入:



select prod_nameFrom Products;

结果:

分析:

上述语句通过select语句从Prouducts表中检索名为prod_name的列。所需的列名写在 select后,从哪个表检索的关键字写在FROM后。


返回的数据没有特定的顺序。



检索多个列

输入:



select prod_name,prod_id,vend_idFrom Products;

结果:


分析:

在选择多个列时,一定要在列名之间加上逗号,最后一个列名后不要加逗号。


检索所有的列

输入:



select *From Products;


检索不同的值

通过上述步骤,可以知道vend_id列有很多重复的值,可以使用distinct关键字,指示数据库返回不同的值。

输入:



select distinct vend_idfrom Products;

结果:

提示:

SQL语句不区分大小写,select和SELECT相同

不能部分使用distinct,该关键字作用于所有的列,不仅仅是跟在其后的那一列。



限制结果

输入:



select  vend_idfrom Products limit 5;

输出:

分析:

如果只想返回一定数量的行,各种数据库中的SQL语句不同,在MySQL中,使用limit子句。limit 5指示MySQL返回不超过5行的数据。


输入:



select  vend_idfrom Products limit 5 offset 2;


输出:

分析:

limit 5 offset 2

第一个数字是检索的行数,第二个数字是指从哪儿开始。

注意第一个被检索的行是第0行,而不是第1行,因此limit 1 offset 1会检索第2行,而不是第1行。

简化版的limit 5 offset 2,是limit 2,5,逗号之前的值对应offset,逗号之后的值对应limit。



使用注释

注释使用两个连字符--嵌在行内,--之后的文本就是注释,或者在前面加#或者注释从/*开始,到*/结束。





select  vend_id  --注释from Products limit 5 offset 2;#这是注释/*注释*/


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: