第三天

第三天_第1张图片
图片发自App

OR的用法

第三天_第2张图片
SQL总结

项目一

移动平均值概念

第三天_第3张图片
第三天_第4张图片
第三天_第5张图片

练习:

使用 AND 和 BETWEEN 运算符的问题

1 编写一个查询,返回所有订单,其中 standard_qty 超过 1000,poster_qty 是 0,gloss_qty 也是 0。

2 使用客户表查找所有不以 'C' 开始但以 's' 结尾的公司名。

3 使用 web_events 表查找通过 organic 或 adwords 联系,并在 2016 年的任何时间开通帐户的个人全部信息,并按照从最新到最旧的顺序排列。

SELECT *

FROM orders

WHERE standard_qty >1000 AND poster_qty=0 AND gloss_qty=0;

SELECT *

FROM accounts

WHERE name NOT LIKE 'C%' AND name LIKE '%s';

SELECT *

FROM web_events

WHERE channel IN('organic','adwords') AND occurred_at >='2016-01-01'

ORDER BY occurred_at DESC;

SELECT *

FROM web_events

WHERE channel IN ('organic', 'adwords') AND occurred_at BETWEEN '2016-01-01' AND '2017-01-01'

ORDER BY occurred_at DESC;

使用 OR 运算符的问题

1 查找 订单 (orders) id 的列表,其中 gloss_qty 或 poster_qty 大于 4000。只在结果表中包含 id 字段。

2 编写一个查询,返回订单 (orders) 的列表,其中标准数量 (standard_qty)为零,光泽度 (gloss_qty) 或海报数量 (poster_qty)超过 1000。

3 查找以 'C' 或 'W' 开头的所有公司名 (company names),主要联系人 (primary contact) 包含 'ana' 或 'Ana',但不包含 'eana'。

SELECT id

FROM orders

WHERE gloss_qty>4000;

SELECT *

FROM orders

WHERE standard_qty=0 AND (gloss_qty>1000 OR poster_qty>1000);

SELECT *

FROM accounts

WHERE (name LIKE 'C%' OR name LIKE 'W%' )

  AND (primary_poc LIKE '%ana%'

  OR primary_poc LIKE '%Ana%')

  AND primary_poc NOT LIKE '%eana%';

SELECT *

FROM accounts

WHERE (name LIKE 'C%' OR name LIKE 'W%' )

  AND ((primary_poc LIKE '%ana%'

  OR primary_poc LIKE '%Ana%')

  AND primary_poc NOT LIKE '%eana%');

项目一回答


第三天_第6张图片
第三天_第7张图片
第三天_第8张图片
第三天_第9张图片

老师回复:


第三天_第10张图片
开心

包含用于提取数据的SQL查询。

查询运行没有错误,并提取预期的数据。

TIP: 有时候我们使用精确搜索可能会失败,例如我想查询广州的数据但是数据库中可能没有广州的数据,或者拼写错误。这里假如我们使用精确匹配把每个可能的情况都去查询一下可能会比较浪费时间,那其实我们可以使用LIKE来进行模糊查询。


第三天_第11张图片

计算移动平均值,并在折线图中使用。

TIP: 考虑到你会在未来的学习中更多的接触到Python的使用,那么这里我们其实可以使用Python中的Pandas库中的rolling函数进行计算(你将会未来不久接触到Pandas的使用)

你可能感兴趣的:(第三天)