9.9 Sat 创建 B章的样例表 CREATE DATABASE crash_course 成功了 不知道为啥必须有下划线 不然就error1064 用的5.5版本
USE crash_course
执行脚本文件
source F:\数据分析师\mysql_scripts\create.sql query OK 成功了 可喜可贺 source F:\数据分析师\mysql_scripts\populate.sql 成功就是用populate.sql文件填充各个新表
3.3了解数据库和表
SHOW DATABASES; 知道这个数据库都有什么表
SHOW TABLES; 获得一个数据库内的表的列表
SHOW COLUMNS FROM customers; 列出各列的信息
第4章 检索数据
4.2 检索单个列
SELECT prod_name FROM products;
4.3检索多个列 SELECT prod_id,prod_name,prod_price FROM products;
4.4 检索所有列
SELECT * FROM products;
4.5 检索不同的行
SELECT vend_id FROM products;
SELECT DISTINCT vend_id FROM products;
4.6限制结果
SELECT prod_name FROM products LIMIT 5; SELECT prod_name FROM products LIMIT 5,5; 检索从第五行开始的五行
4.7 使用完全限定的表名
SELECT products.prod_name FROM products;
SELECT products.prod_name FROM crash_course.products;
第5章 排序检索数据
5.1 排序数据 SELECT prod_name FROM products ORDER BY prod_name; 字母顺序排序
5.2 按多个列排序 SELECT prod_id, prod_price,prod_name FROM products ORDER BY prod_price,prod_name;
5.3 指定排序方向
SELECT prod_id, prod_price,prod_name FROM products ORDER BY prod_price DESC; 按价格以降序排列
多个列以降序排列产品 再对产品名排序
SELECT prod_id, prod_price,prod_name FROM products ORDER BY prod_price DESC,prod_name; DESC不管多列
确定最大(高)值 SELECT prod_id, prod_price,prod_name FROM products ORDER BY prod_price DESC LIMIT 1;
9.10
第6章 过滤数据 如何使用SELECT 语句的WHERE子句指定搜索条件。 6.1 使用WHERE子句 SELECT prod_name,prod_price FROM products WHERE prod_price=2.50;
6.2 WHERE 子句操作符 6.2.1检查单个值 SELECT prod_name,prod_price FROM products WHERE prod_name ='fuses';
列出价格小于10美元的所有产品 SELECT prod_name,prod_price FROM products WHERE prod_price<=10;
6.2.2不匹配检查 列出不是由供应商1003制造的所有产品: SELECT vend_id,prod_name FROM products WHERE vend_id <>1003; <> 也可以用!=代替
6.2.3 范围值检查 检索价格在5美元和10美元之间的所有产品
SELECT prod_name,prod_price FROM products WHERE prod_price BETWEEN 5 AND 10;
6.2.4空值检查 SELECT prod_name FROM products WHERE prod_price IS NULL;
SELECT cust_id FROM customers WHERE cust_email IS NULL;
第7章 数据过滤 7.1 组合WHERE子句 7.1.1 AND操作符 检索由供应商1003制造且价格小于等于10美元的所有产品名称和价格
SELECT prod_id,prod_name,prod_price FROM products WHERE vend_id=1003 AND prod_price <=10; AND操作符可以多个使用
7.1.2 OR操作符 检索由任意指定供应商制造的所有产品的产品名和价格 SELECT prod_name,prod_price FROM products WHERE vend_id =1002 OR vend_id =1003;
7.1.3 计算次序 列出价格为10美元含以上且由1002或1003制造的所有产品 SELECT prod_name,prod_price FROM products WHERE vend_id =1002 OR vend_id =1003 AND prod_price >=10; 但是是不正确的 因为会优先AND
所以 SELECT prod_name,prod_price FROM products WHERE(vend_id =1002 OR vend_id =1003) AND prod_price >=10;
7.2 IN操作符 圆括号再where子句中还有另外一种用法,IN操作符用来指定条件范围 范围中的每个条件都可以进行匹配 检索供应商1002,1003制造的所有产品 表达式:IN(,,) SELECT prod_name,prod_price FROM products WHERE vend_id IN(1002,1003) ORDER BY prod_name;
其结果等同于OR的结果, SELECT prod_name,prod_price FROM products WHERE vend_id =1002 OR vend_id =1003;
7.3 NOT操作符 NOT是否定它之后所有条件
列出除1002 1003之外的所有供应商制造的产品价格 SELECT prod_name, prod_price FROM products WHERE vend_id NOT IN(1002,1003) ORDER BY prod_name;
第8章 用通配符进行过滤 8.1 LIKE操作符 通配符:用来匹配值的一部分的特殊字符。 搜索模式:有字面值、通配符或两者组合构成的搜索条件。
8.1.1 百分号(%)通配符 表示任何字符出现任意次数 例 为了找出以词jet起头的产品可以使用 SELECT prod_id,prod_name FROM products WHERE pr