SQL学习之--《SQL必知必会》

SQL学习之–《SQL必知必会》

《SQL必知必会》是入门SQL的一本绝佳教材,简洁明了,当然学习还是要做笔记的!
MySQL教程
MARKDOWN教程

了解数据库

其实我们一直都在使用数据库,只是我们不自知,像我们要在登录一些网站,便需要依靠数据库验证用户名和密码。
数据库(database)是一个以某种有组织的方式存储的数据集合。数据库就如同一个文件柜,在这个柜子中有很多文件夹,这个文件夹就是表(table),代表某种特定类型数据的结构化清单。这里的类型并非是数据类型的意思,而是顾客的清单和订单的清单,这样的类型的区别。最初对我是有些混淆的。一个数据库中不能有相同的表名,不同的数据库是可以有的。表中当然有列代表表中的字段,一列的数据类型是固定的。 行则是表中的一个记录。
还有两个较为重要的概念:

  • 主键(primary key):一列(或一组列),其值能够唯一标识表中每一行。
  • 外键(foreign key):表A的主键列,在表B中有一列L其取值于主键列,把两个表关联在一起,列L是表B的外键。

用本书中用到的5个表,并利用MySQL workbench导出其关系图,如下图:
用本书中的用到的5个表,并利用MySQL workbench导出其关系图

表通过主键和外键进行连接。(导出方法链接。)

SELECT语句

检索数据

检索一列:

SELECT prod_name
FORM Products;

检索多列,逗号分隔:

SELECT prod_id,prod_name
FROM Products;

检索全部列:

SELECT *
FROM Products;

检索不同的值:

SELECT DISTINCT 一行或两行

检索前几行,后几行:

SELECT 列名
FROM 表名
LIMIT 5;     #前五行,一个SELECT语句结束后加分号
LIMIT 5 OFFSET 5;      #后五行,偷懒的不重复前两行的写法

排序数据

SELECT 列名
FROM 表名
ORDER BY 某一列或多列;       #必须放在select语句的最后一行,多列时先按第一列排,再按第二列...

关键字 DESC降序排列,ASC升序排列;

过滤数据

SELECT 列名
FROM 表名
WHERE 条件;        #例 prod_price=3.4

WHERE 字句操作符:

操作符说明操作符说明
=等于>大于
<>不等于>=大于等于
!=不等于!>不大于
<小于BETWEEN在指定的两个值之间(要用AND)
<=小于等于IS NULL为NULL值
!<不小于

在建立这个表中遇到了一些符号的转义,在此可以找到

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值