1.insert 语句
(1)新建一个users表
coding:CREATE TABLE users (
id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(10) NOT NULL,
PASSWORD VARCHAR(32) NOT NULL,
age TINYINT UNSIGNED NOT NULL DEFAULT 10,
sex BOOLEAN
);
(2)其中id设置为auto_increment字段了,所以插入的时候可以不指定,直接为空值,也即是输入NULL。
eg: INSERT users VALUES ( NULL,'tom','123',25,1); //DEFUALT也可,表达式也可以,25=3*7+4。
eg: INSERT users VALUES ( NULL,'tom','123',25,1),( NULL,'tom',md5('123'),25,1); //md5散列函数
(3)子查询 INSERT tbl_name SET col_name = {expr|DEFAYLT};
2.单表更新
eg:UPDATE users SET age =age+5; 省略条件,更新所有。
eg:UPDATE users SET age =age-id,sex=0;
eg:UPDATE users SET age =age+10 WHERE id%2=0;
单id为2的时候,年龄加上10岁。
3.单表删除
DELETE FROM tbl_name [WHERE where_condition];
4.SELECT语句
(1)SELECT version(), SELECT now();
(2) eg:SELECT id,username FROM users; //查找users中的id和username,操作顺序决定出现顺序。
(3) eg:SELECT users.id,users.username FROM users; //适用多表操作,也可以起别名的方法。
(4) eg:SELECT id AS userid,username AS uname FROM users;
//给 id 和username起别名,适用于名字特别长的状况。
5.WHERE 语句
(1)查询结果的分组:SELECT sex FROM users GROUP BY sex;
对sex的查找结果进行分组,列出有什么。
(2)HAVING是分组查询的条件
SELECT age FROM users GROUP BY age HAVING age>25;
选择users中age 大于25的。
(3)SELECT age FROM users GROUP BY age HAVING count(id)>25;
查找id大于25的一共有几个。
6.ORDER BY 排序
(1)SELECT * FROM users ORDER BY id DESC; //按id号排,从大到小
(2)SELECT * FROM users ORDER BY id,age DESC;//先排id然后再排age
7.limit 查找
(1)SELECT * FROM users LIMIT 2 //返回两条记录。
(2)SELECT * FROM users LIMIT 3,2//从第三条开始返回,返回2条也即是第3-4条
(3)INSERT test(username) SELECT username FROM users WHERE age >=30;
创建一个test表,然后从users中选择特定的数据存入到表中
(1)新建一个users表
coding:CREATE TABLE users (
id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(10) NOT NULL,
PASSWORD VARCHAR(32) NOT NULL,
age TINYINT UNSIGNED NOT NULL DEFAULT 10,
sex BOOLEAN
);
(2)其中id设置为auto_increment字段了,所以插入的时候可以不指定,直接为空值,也即是输入NULL。
eg: INSERT users VALUES ( NULL,'tom','123',25,1); //DEFUALT也可,表达式也可以,25=3*7+4。
eg: INSERT users VALUES ( NULL,'tom','123',25,1),( NULL,'tom',md5('123'),25,1); //md5散列函数
(3)子查询 INSERT tbl_name SET col_name = {expr|DEFAYLT};
2.单表更新
eg:UPDATE users SET age =age+5; 省略条件,更新所有。
eg:UPDATE users SET age =age-id,sex=0;
eg:UPDATE users SET age =age+10 WHERE id%2=0;
单id为2的时候,年龄加上10岁。
3.单表删除
DELETE FROM tbl_name [WHERE where_condition];
4.SELECT语句
(1)SELECT version(), SELECT now();
(2) eg:SELECT id,username FROM users; //查找users中的id和username,操作顺序决定出现顺序。
(3) eg:SELECT users.id,users.username FROM users; //适用多表操作,也可以起别名的方法。
(4) eg:SELECT id AS userid,username AS uname FROM users;
//给 id 和username起别名,适用于名字特别长的状况。
5.WHERE 语句
(1)查询结果的分组:SELECT sex FROM users GROUP BY sex;
对sex的查找结果进行分组,列出有什么。
(2)HAVING是分组查询的条件
SELECT age FROM users GROUP BY age HAVING age>25;
选择users中age 大于25的。
(3)SELECT age FROM users GROUP BY age HAVING count(id)>25;
查找id大于25的一共有几个。
6.ORDER BY 排序
(1)SELECT * FROM users ORDER BY id DESC; //按id号排,从大到小
(2)SELECT * FROM users ORDER BY id,age DESC;//先排id然后再排age
7.limit 查找
(1)SELECT * FROM users LIMIT 2 //返回两条记录。
(2)SELECT * FROM users LIMIT 3,2//从第三条开始返回,返回2条也即是第3-4条
(3)INSERT test(username) SELECT username FROM users WHERE age >=30;
创建一个test表,然后从users中选择特定的数据存入到表中