SQL插入语句

insert into 表名(表列1,表列2,表列3,表列4,表列5,表列6) values (?,?,?,?,?,?)

问号对应是插入的值;

案例:

insert into db_student(student,password,name,sex) values (123456,'benzhu','张三','男')

SQL删除语句

DELETE FROM 表名 WHERE 列名=?

问号对应的是要删除那一列的哪一行;

案例:

DELETE FROM db_leave WHERE id=123456

SQL查询语句

select * from 表名 where 列名=?

问号对应的是要查询的列名等于的条件;

案例:

select * from db_student where student=123456

SQL多条件查询语句

select * from 表名 where 列名=? and 列名=?

问号对应的是要查询的列名等于的条件;where后面跟着的是查询条件,可以用and或者or连接多了条件,三个条件可以根据情况加括号。

案例:

select * from db_student where student=123456 or name='张三'

SQL修改语句

UPDATE 表名 SET 列名=?,列名=? WHERE 列名=?

问号对应的是要查询的列名等于的条件;SET后面跟着的是要修改的列,WHERE后面跟着的是确定需要修改的哪一行。

案例:

UPDATE db_student SET student=123456 WHERE name='张三'

内连接

select 列名,列名 from 左表 INNER JOIN 右表 on 左表.列名 = 右表.列名 where 列名=?

INNER JOIN关键字回返回左表和右表都满足条件的行。

案例:

select db_student.student,db_college.name from db_student INNER JOIN db_college on dbstudent.id=db_college.id where db_student.name='张三'

SQL左连接

select 列名,列名 from 左表 LEFT JOIN 右表 on 左表.列名=右表.列名 where 列名=?

LEFT JOIN 关键字会从左表那里返回所有的行,即使在右表中没有匹配的行;最开始的列名是表示需要查询显示出的列。查询条件可要可不要。

案例:

select db_student.student,db_college.name from db_student LEFT JOIN db_college on dbstudent.id=db_college.id where db_student.name=张三

SQL右连接

select 列名,列名 from 左表 RIGHT JOIN 右表 on 左表.列名=右表.列名 where 列名=?

与左连接一样的道理,RIGHT JOIN 关键字会右表那里返回所有的行,即使在左表中没有匹配的行。查询条件可要可不要。

案例:

select db_student.student,db_college.name from db_student RIGHT JOIN db_college on dbstudent.id=db_college.id where db_student.name='张三'

完全链接

select 列名,列名 from 左表 FULL JOIN 右表 on 左表.列名 = 右表.列名 where 列名=?

FULL JOIN关键字返回左表和右表的所有数据,没有匹配的会留null。

案例:

select db_student.student,db_college.name from db_student FULL JOIN db_college on dbstudent.id=db_college.id where db_student.name='张三'

交叉连接

select 列名,列名 from 左表,右表

又称笛卡尔积,返回互相交叉的数据。

案例:

select db_student.student,db_college.name from db_student,db_college

模糊查询

Like %?%

用like语句放在where后面进行查询,查询包含问号内容的字段

案例:

where db_student.name LIKE '%张三%'

倒序正序查询

倒序:order by 列名 desc

正序:order by 列名 asc

把语句放在SQL语句的最后面,按照某一列的排序进行正序或者倒序的查询。

案例:

order by db_leave.id desc

分页查询

LIMIT a,b

把语句放在最后面,可以放在倒序正序查询后面,意思是查询从a条记录开始,查询b条。此查询语句可以用来翻页,做个循环就好。

案例:

LIMIT 0,5

分组

group by 列名 having 聚合函数

将指定的列中根据相同的值进行分组,其中having后面可加可不加,主要用于筛选。

案例:

SELECT id, SUM(求和的列名) FROM 表名 GROUP BY 列名

聚合函数

  • avg():求平均

  • sun():求和

  • count():统计

  • max():最大值

  • min():最小值

判断字段为空

is null