当前位置:网站首页>Summary of SQL single table query 2020.7.27

Summary of SQL single table query 2020.7.27

2022-07-07 23:28:00 codepig16

1. grammar

select
	 Field list 
from
	 Show list 
where
	 List of conditions 
group by
	 Grouping field 
having
	 Conditions after grouping 
order by
	 Sort 
limit
	 Paging limit 

The following operations are all in this student On the table :
 Insert picture description here

2. Basic query

 Query each student's math score , English grades and total scores 
SELECT NAME,math,IFNULL(english,0) AS english,math+IFNULL(english,0) AS ' Total score ' FROM student;

 Insert picture description here

3. Conditions of the query

How to check the math scores 60 To 100 Between students and their grades

SELECT 
NAME,math 
FROM 
student 
WHERE 
math BETWEEN 60 AND 100;

 Insert picture description here
 Insert picture description here

 Insert picture description here
 Insert picture description here
 Insert picture description here

4. Group query

Aggregate functions : Take a column as a whole , Do the longitudinal calculation
1.count Calculate the number of
2.max Calculate the maximum
3.min
4.sum
5.avg Calculate average

Be careful :
1. Fields to be queried after grouping : Grouping fields and aggregate functions , Other fields are meaningless
2.where and having The difference between ?

  • a. where Limit before grouping , If you don't do that , They don't participate in the grouping .having Limit after grouping , If the result is not satisfied , You won't find out
  • b. where You can't follow an aggregate function ,having You can judge the aggregation function

Check the average score of male and female students

SELECT sex,AVG(math+english)AS AVG FROM student GROUP BY sex;

 Insert picture description here
Check the average score and number of male and female students

SELECT 
sex,AVG(math+english)AS AVG,COUNT(id) AS COUNT 
FROM 
student 
GROUP BY 
sex;

 Insert picture description here
Group by sex . Check the men separately 、 Average score of female students , The number of requirement : The score is below 70 Divided people , Don't participate in grouping , After grouping . There are more people than 2

SELECT 
sex,AVG(math+english)AS ' average ',COUNT(id) AS ' The number of ' 
FROM 
student 
WHERE 
math > 70 
GROUP BY 
sex 
HAVING 
COUNT(id)>2;

5. Sort query

grammar :order by Sort field 1 sort order 1, Sort field 2 sort order 2
sort order :
ASC: Ascending Default
DESC: Descending
Be careful : When there are multiple sorting conditions , Only when the previous condition values are the same , To judge the second condition

Rank according to math scores , If the math scores are the same, they will be ranked according to the English scores

SELECT 
* 
FROM 
student 
ORDER BY 
math DESC,english DESC;

 Insert picture description here

Paging query

grammar :limit Index started , Number of queries per page
The formula : Index started = ( The current page number - 1)* Number of entries per page
** Be careful limit yes mysql Dialect of **

Query the top three students in Mathematics

SELECT
*
FROM 
student
ORDER BY 
math DESC
LIMIT
0,3;

 Insert picture description here

原网站

版权声明
本文为[codepig16]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202130559466409.html