Mysql 自学之路
本文包含基础部分与高级部分
一.基础
数据库操作
Show databases;显示所有的数据库 Show tables; 显示所有的数据库表 Use databasename;切换数据库 Desc tablename; 显示表中所有的字段信息
说明:笔记中所使用的sql语句均使用表websites 和 access_log
表1:websites
+----+--------------+---------------------------+-------+---------+
| id | name | url | alexa | country |
+----+--------------+---------------------------+-------+---------+
| 1 | Google | https://www.google.cm/ | 1 | USA |
| 2 | 淘宝 | https://www.taobao.com/ | 13 | CN |
| 3 | 菜鸟教程 | http://www.runoob.com/ | 4689 | CN |
| 4 | 微博 | http://weibo.com/ | 20 | CN |
| 5 | Facebook | https://www.facebook.com/ | 3 | USA |
| 7 | stackoverflow | http://stackoverflow.com/ | 0 | IND |
+----+---------------+---------------------------+-------+---------+
表2:access_log
+-----+---------+-------+------------+
| aid | site_id | count | date |
+-----+---------+-------+------------+
| 1 | 1 | 45 | 2016-05-10 |
| 2 | 3 | 100 | 2016-05-13 |
| 3 | 1 | 230 | 2016-05-14 |
| 4 | 2 | 10 | 2016-05-14 |
| 5 | 5 | 205 | 2016-05-14 |
| 6 | 4 | 13 | 2016-05-15 |
| 7 | 3 | 220 | 2016-05-15 |
| 8 | 5 | 545 | 2016-05-16 |
| 9 | 3 | 201 | 2016-05-17 |
+-----+---------+-------+------------+
1.LIKE 操作符
实例:
1 select * from websites where url like 'https%';-- url包含https的数据 2 select * from websites where name like 'G%'; -- name以G开头 3 select * from websites where url like '%h%';-- url包含h的字段数据 4 select * from websites where name like '_o%';-- name中o在第二个字符的数据
2.ORDER BY 关键字
说明:对结果集按照一个列或多个列排序
实例:
1 select name,alexa from websites 2 order by alexa desc; -- 默认时升序 desc 表示降序 3 4 select * from websites 5 order by country, alexa; -- 多列排序时,先排country 在排alexa
3.INSERT INTO
说明:向表中插入数据
实例:
1 insert into websites 2 values (6,'百度','http://www.baidu.com',22,'ZG');-- 可以省略列,但要所有的值都插入 3 4 insert into websites (id ,name,url,alexa,country) 5 values ('7','网易','www.wangyi.com','25','ZG');-- 可以指定插入哪一列
4.UPDATE
说明:更新表中的数据
实例:
update websites set url = 'http://www.wangyi.com' where id = 7; update websites set alexa = 5000, country = 'USA' where id = 3;
5.DISTINCT
说明:过滤重复的数据
实例:
SELECT DISTINCT country FROM Websites;
6.DELETE
说明:删除数据或者删除表
实例:
-- 删除一行数据 SELECT FROM WEBSITES WHERE ID = 7; -- 删除整个表,但是表的结构仍存在 SELECT FROM WEBSITES;
7.AND, OR ,IN
说明:均用于筛选数据
实例:
1 SELECT * FROM WEBSITES 2 WHERE ID BETWEEN 1 AND 3; 3 4 SELECT * FROM WEBSITES 5 WHERE ID = 1 OR ID =3;-- 筛选id为1和3 的数据 6 7 SELECT * FROM WEBSITES 8 WHERE ID IN (1,3);
以上就是Mysql的基础部分,一些简单的增删改查操作,可能内容不是很全,但是希望对初学Mysql的同学能起到一定的参考和借鉴的作用,有人说基础部分应该包括建库,建表等..这些后续我会加在高级部分,因为我个人觉得每一个初学者开始学的时候都应该先学会简单的增删改查,先加深对sql的理解,再慢慢的自己创建数据库和表及加约束等等。今天就到这,欢迎大家评论留言,一起学习一起进步!