World数据库:
数据库使用,数据表列属性,字段进行修改:
#查询city表 5到14的数据 SELECT * FROM city LIMIT 4,10;
#根据countrycode分组 SELECT * FROM city GROUP BY CountryCode;
#查询city表中的人数均值 SELECT AVG(Population) FROM city;
#查询population>20000的人数 SELECT ID,NAME FROM city WHERE Population>20000;
#修改列名称 ALTER TABLE city CHANGE Name 姓名 VARCHAR(100);
#修改列名称数据类型 ALTER TABLE city MODIFY 姓名 VARCHAR(99);
#添加一列 ALTER TABLE city ADD COLUMN 测试 VARCHAR(56);
#修改表名称 ALTER TABLE city RENAME TO 城市;
#查看数据条数 SELECT COUNT(DISTINCT ID) FROM city;
#添加默认值约束 ALTER TABLE city CHANGE COLUMN 测试 测试 VARCHAR(56) DEFAULT 'beijing';
#删除默认值约束 ALTER TABLE city CHANGE COLUMN 测试 测试 VARCHAR(56) DEFAULT NULL;
#添加一个检查约束 ALTER TABLE city ADD CONSTRAINT check_1 CHECK(Population>20000);
#添加一个唯一约束 ALTER TABLE city ADD CONSTRAINT un_1 UNIQUE(测试);
#删除唯一约束 ALTER TABLE city DROP INDEX un_1;
#删除检查约束 ALTER TABLE city DROP CONSTRAINT check_1;
city数据表操作:
city(ID,姓名,CountryCode,District,Population,测试)
增加
#插入一条数据 INSERT INTO city VALUES (5000,'pp','IDN','cc',7800,10);
删除
#删除人数小于500的数据 DELETE FROM city WHERE Population<5000;
修改
#修改编号45的人数 UPDATE city SET Population=1000 WHERE ID=45;
查询:
SELECT 属性 FROM 表来源 WHERE 查询条件 GROUP BY 分组条件 HAVING 查询条件 ORDER BY 排序列属性 LIMIT 限制查询条目数条件 备注:where后面不可以跟聚合函数,having后面可以跟聚合函数
个人理解:针对数据分析这一操作,查询语句主要用于从后台数据库获取所需要的基本信息(数据源获取)
因此查询部分应该更加关注:多表查询———左,右外连接
A LEFT JOIN B ON A.ID=B.ID; 主要以A表为基准
B RIGHT JOIN A ON B.ID=A.ID; 主要以A表为准
视图,存储过程,授权:
视图:创建一张虚拟表,可以建立在单表或者多表,本身不存放数据,只是封装数据
#创建视图CREATE VIEW CITY_VIEW AS SELECT * FROM CITY;
#修改视图ALTER VIEW CITY_VIEW AS SELECT ID FROM CITY;
#删除视图 DROP VIEW IF EXISTS CITY_VIEW;
#描述视图 DESCRIBE CITY_VIEW;
存储过程:更加方便查询,优化SQL语句
#创建存储过程
DELIMITER //
CREATE PROCEDURE P1(IN TESTID INT(33))
BEGIN
SELECT Population FROM CITY
WHERE ID=TESTID
END //
#使用存储过程
DELIMITER //
CALL P1(456)
#授权
#创建用户CREATE USER 'H'@'localhost' IDENTIFIED BY '123';
#分配权限GRANT SELECT ON city TO 'H' IDENTIFIED BY '123' WITH GRANT OPTION;
#收回权限REVOKE SELECT ON city FROM 'H';
#修改用户名RENAME USER 'H' TO 'W';
#删除用户DROP USER 'W';