MoshSQL教程P6-P9笔记

本文提供了一个10小时的SQL教程,覆盖基础操作如数据操作、子查询、MySQL内置函数,还会介绍高级主题如创建视图、存储过程、索引优化以及数据库设计。课程还涉及关系型数据库的概念和日期比较运算符的使用。
摘要由CSDN通过智能技术生成

【中字】SQL进阶教程 | 史上最易懂SQL教程!10小时零基础成长SQL大师!!_哔哩哔哩_bilibili

课程内容:

  1. 前四节,所有基本的SQL技能,可以在任何数据库中获取、插入、更新和删除数据
  2. 汇总数据来创建报告,学到使用子查询来编写复杂查询,学到MySQL的基本内置函数,用于和数字、日期以及文本数据打交道
  3. 随着你写下更多的查询,你会发现自己在一遍又一遍写同样的查询,所以在随后的两节内容中,会讲到创建视图、存储过程和函数,存储你的查询以供后续使用
  4. 接下来会继续接触更高阶的内容,比如触发器和事件、事务和并发,一旦你熟练掌握这一部分,你相当于具备了一组强大的MySQL技能
  5. 如果你想要脱颖而出,你就必须学习设计数据库,所以我已经费心整合出了一套完整深入的章节,来探讨如何设计数据库,我会领你们逐步了解一套系统方法,帮助你们想出一个你们自己数据库的最佳设计
  6. 然后我们会查看,为了实现高效而使用的索引,你会学到什么是索引,它们的原理,我们如何利用它们来为我们的查询提速,当你的数据库规模不断扩大,索引绝对是必不可少的
  7. 最后我们课程结束前会学到如何保护你的数据库,那一章节你会学到创建用户账户,分配各种权限,人们就无法滥用你的数据,他们只能查看和修改与他们相关的数据

 关系型数据库,这类数据库有多张表,通过关系彼此关联。

SQL是不分大小写的语言,但是最好大写sql的关键字,并小写其余所有内容。

*表示返回所有列,数据量很大时,我们会明确指定想获取的列。

SELECT *
FROM customers

换行符、大间隔、tab符在执行SQL语句时都没有作用,所以可以写成下面这种。但是随着查询越来越复杂,最好把每条子句放在新建行。 

SELECT * FROM customers

 AS可以给列和结果一个描述性名称,如果想在列名里带上空格,需要在两侧加上引号,单引号双引号都可以。

SELECT points * 10 + 100 AS discount_factor
SELECT points * 10 + 100 AS ‘discount factor’

关键字DISTINCT可以删去重复项

SELECT DISTINCT state

 课后练习

USE sql_inventory;

SELECT
	name, 
    unit_price, 
    unit_price * 1.1 AS new_price
FROM products

比较运算符

  1. >
  2. >=
  3. <
  4. <=
  5. =
  6. !=    <>   这俩都是不等于
SELECT *
FROM customers
WHERE points > 3000

当要处理一串字符序列,本质上的文本数据,需要把数值用单引号或双引号封上。但通常按照惯例使用单引号。

SELECT *
FROM customers
WHERE state = 'VA'

 获得不住在Virginia的顾客

SELECT *
FROM customers
-- WHERE state != 'VA'
WHERE state <> 'VA'

比较运算符也可以用在日期值上。假设你想得到在1990年1月1日之后出生的顾客

SELECT *
FROM customers
WHERE birth_date > '1990-01-01'

 课后练习

SELECT *
FROM orders
WHERE order_date >= '2019-01-01'

这段查询如果明年再用就无法给我们返回正确的答案,之后的课程会示范如何写查询得到当前年份的订单。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值