一.SQL的环境搭载
单机离线环境
安装:下载Beekeeper-studio
运行:可导入一个简单数据库进行实验
在线环境
- (这是在python基础下创造的sql环境,在线可用的python:希冀平台中的在线实验)
在希冀平台实验输入sql的方法:
- 第一步:把sql拖入
- 第二步:将以下代码输入运行框并修改一下,点击Code,点击运行,如果运行结尾后有done出现,则说明运行成功。
%reload_ext sql
%sql sqlite:///需要你输入sql的文件名.sqlite
%sql ATTACH '需要你输入sql的文件名.sqlite' AS e_store_db;
如图所示:
- 第三步:对sql数据库进行操作时前提要输入%%sql,之后再写你需要编辑的代码,否则运行不了
二.SQL的单表操作
1.sql基础三步
-
书写顺序:select…from…where…
-
from:定位要载入的表 → 定位hero_data_table数据表(hero_data_table为被剪辑的数据名称)
-
select:显示出想要出现的数据,一行一行的按条件筛选出目标行,*代表选中所有的行,运行出的结果是sql的所有数据
-
拓展:
1.对数据库名称简单重命名为h:from 数据库名称 as h
2.选中数据库中hero一行(可以同时选中多行中间用,
隔开):select h.hero
3.在select中将自己编辑的新的数据命名 eg:h.life + h.speed + h.attack as'
显示数字的总和'
)
如图: -
where:输入筛选目标的代码,显示出来目标行中的指定列
以上显示的是所有speed>350的英雄数据 -
注意事项:大前提是输入的代码应全为英文,标点符号也是,在select中不想显示所有行,可以h.想要选中某一行的名称,用英文逗号隔开,数据库命名为h之后,h后面的内容必须是数据库每一列名称的内容
2.sql四则运算
sql可以单独经行运算
含义 | 运算符 |
---|---|
加法运算 | + |
减法运算 | _ |
乘法运算 | * |
除法运算 | / |
求余运算 | % |
就好像select语句不需要from就可以独立成句显示常量一样,select语句也可以独立成句进行简单四则运算。
代码 | 代码结果 |
---|---|
select 3+2 | 3+2=5 |
select 3/2 | select 3/2=1 |
select 3/2.0 | select 3/2.0=1.5 |
select (3*(2+3))/5-6 as ‘复合运算’ | 复合运算 = -3 |
既然独立成句语境下支持,那么在更加复杂的使用环境下也同样支持,比如:
产品档位划分如下
范围 | 档位 |
---|---|
[0,10) | 1 |
[10, 20) | 2 |
[20, 30) | 3 |
使用select和where四则运算得到极简文具公司数据库处在2,3档位的文具
代码如下:
select p.产品_描述,p.产品_售价, p.产品_售价/10+1 as '价格档位'
from 产品 as p
where (p.产品_售价/10+1) in (2,3)
代码结果如下:
产品_描述 | 产品_售价 | 价格档位 |
---|---|---|
自动铅笔 | 15 | 2 |
16开笔记本 | 22 | 3 |
中性笔 | 18 | 2 |
马克笔 | 10 | 2 |
文件夹 | 20 | 3 |
3.limit (限制查询结果个数)
- 比如对于以下代码
select s.销售_订单_ID, s.销售数量
from 销售 as s
其运行的结果就有213行
- 如果我们指向显示,比如10行,就可以用以下的代码实现
select s.销售_订单_ID, s.销售数量
from 销售 as s
**limit 10 -- 限制只显示10行结果
代码结果如下:有十行内容
销售_订单_ID | 销售数量 |
---|---|
80001 | 19456 |
80016 | 19037 |
80037 | 39582 |
80040 | 15012 |
80047 | 19621 |
80048 | 26637 |
80064 | 17921 |
80075 | 23015 |
80086 | 11860 |
80106 | 16212 |
- limit 之后一般是数字
4.order by(排序)
- order by XXX desc 降序
- order by XXX asc 升序
- 应用举例:在产品表中,价格档位,售价降序排列
5.where 综合条件筛选
where主要为筛选功能&#x