程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> basis and exercise

basis and exercise

編輯:MySQL綜合教程

select now();
select CURDATE();
insert into pa_login_logs(party_no, login_time) values(3,now());
SELECT *,max(login_time) FROM pa_login_logs group by party_no order by max(login_time) desc;
 
 
5.有一張表格s_su,有三個字段age,name,score ,現在根據要求寫出SQL語句:
1),根據年齡分組,選出分數score>90的分組的年齡分組和同學個數。
select age,count(*) from s_su where scoure >90 group by age;
2),根據年齡分組,選出平均分大於85的分組的年齡分組和平均分。
select age,avg(scoure) from s_su group by age having avg(scoure) >90;
3),假設這個表有100條記錄,用SQL語句打印出分頁記錄,打印出第50-60的記錄.
Mysql:select * from s_su limit 50,60;
----》這個主要考到分組和使用函數,另外使用having挑選出適合的分組。至於limit是Mysql專業函數,其他數據庫不知道能不能通用,大家可以測試下。

6.假設表A有6條記錄,B有4條記錄,進行匹配的字段為name,看下面SQL語句給出結果:
1),select * from A left join B on A.name = B.name,最多有幾條記錄,最少呢?
答,最多和最少都是6條。
2),select * from A right join B on A.name = B.name,最多有幾條記錄,最少呢?
答,最多和最少都是4條。
3),select * from A left jion B on A.name = B.name union select * from A left jion B on A.name = B.name,最多有幾條記錄,最少呢?
答,最多和最少都是6條。
4), select * from A left jion B on A.name = B.name union select * from B left jion A on B.name = A.name, 最多有幾條記錄,最少呢?
答:最多有10條,最少有6條。
5), select * from A left jion B on A.name = B.name union all select * from A left jion B on A.name = B.name ,最多有幾條記錄,最少呢?
答:最多和最少都是12條。
6), select * from A left jion B on A.name = B.name union select * from B left jion A on B.name = A.name, 最多有幾條記錄,最少呢?
答:最多和最少都是10條。
----》這裡考到Sql語句中左聯和右聯,左聯就是以左邊作為基准,有的值保留,沒有的話就為Null,右聯也是如此。現在主要是union和union all的問題了,union是將相同的進行合並,不相同的向左邊基准表插入,union all則是不管相同與否都是向左基准表插入。

 

本文出自“tongxiaoming520”
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved