常用SQL语句

tb_course 数据举例

tb_aspect 数据举例

tb_category 数据举例

1、排序

select * from tb_course ORDER BY studyNum

2、隐式连接使用别名

select * from tb_aspect a , tb_category WHERE a.id=c.aspectId

3、显示连接使用别名

select * from tb_aspect a JOIN tb_category c ON a.id=c.aspectId

4、左外链接

select * from tb_course c LEFT JOIN tb_aspect a on c.aspectId=a.id

5、右外连接

select * from tb_course c RIGHT JOIN tb_aspect a on c.aspectId=a.id

6、最大值函数的使用

select MAX(studyNum) from tb_course

7、子查询(出现在where后是作为条件使用)

select * from tb_course where studyNum>(SELECT AVG(studyNum) FROM tb_course) 

8、子查询(出现在from后是作为表使用)

select id,title from (SELECT * FROM tb_course WHERE studyNum>=1000)

9、exists 关键字(当exists后的条件判断成功时,整条查询语句才能执行成功)

select * from tb_course where EXISTS (select * from tb_course where studyNum>1000)

10、单行单列举例

 SELECT * from tb_course where studyNum>=(SELECT avg(studyNum) from tb_course)

11、多行多列举例

SELECT * from tb_course where studyNum >=ALL (SELECT avg(studyNum) from tb_course)

12、单行多列举例

SELECT title,cover,studyNum from tb_course where id=1

13、mysql数据库不支持全连接,但是可以使用union 加上左右连接的方式实现类似功能

select * from tb_course c left join tb_aspect a on c.aspectId=a.id 

UNION

select * from tb_course c right join tb_aspect a on c.aspectId=a.id

你可能感兴趣的:(常用SQL语句)