《Mysql實例基于SQL中的數(shù)據(jù)查詢語句匯總》要點:
本文介紹了Mysql實例基于SQL中的數(shù)據(jù)查詢語句匯總,希望對您有用。如果有疑問,可以聯(lián)系我們。
MYSQL入門where條件表達式
--統(tǒng)計函數(shù)
代碼如下:
Select count(1) from student;
--like模糊查詢
--統(tǒng)計班上姓張的人數(shù)
代碼如下:
select count(*) from student where realName like '張%';
--統(tǒng)計班上張姓兩個字的人數(shù)
代碼如下:
select count(*) from student where realName like '張_';
--統(tǒng)計班上杭州籍的學生人數(shù)
代碼如下:
select count(*) from student where home like '%杭州%';
--查詢班上每位學生的年齡
代碼如下:
select realName,year(now())-year(birthday) as age from student;
--查詢90年出生的學生
代碼如下:
select realName from student where year(birthday)>='1990';
--查詢1987-1990年出生的學生
代碼如下:
select realName from student where year(birthday)<='1990' and year(birthday)>='1987';
select * from student where year(birthday) between '1987' and '1990';
--查詢班上男女生人數(shù)
代碼如下:
select sex,count(*) from student group by sex;
--in子句查詢班上B或O型血的學生
代碼如下:
select realName,blood from student where blood in('B','O');?
子查詢
子查詢也可稱之為嵌套查詢,有些時候,一次查詢不能解決問題,需要多次查詢.
MYSQL入門按子查詢返回的記錄行數(shù)區(qū)分,可分為單行子查詢和多行子查詢;
代碼如下:
select * from emp where sal>(?????? select sal from emp where ename='ALLEN‘ or ename =‘KING')
上例是找出比allen工資高的所有員工
MYSQL入門A.子查詢一般先于主語句的運行
B.必須有( ),表示一個整體
C.習慣上把子查詢放在條件的右邊
多行子查詢:some,any,all
MYSQL入門連接語句(應用于多表查詢)
包括:內(nèi)聯(lián),外聯(lián)(左外連和右外聯(lián))
內(nèi)聯(lián)(inner join):把兩張表相匹配的行查詢出來.
--查詢每個學生的各科成績,顯示“姓名”“課程名”“分數(shù)”三列
代碼如下:
select a.realname,c.courseName,b.score from stu_student as a inner join stu_score as b on a.sid=b.sid inner join stu_course c on b.cid=c.cid
還有一種方法,不采用inner join:
代碼如下:
select a.realname,c.courseName,b.score from student a,score b,course c where a.sid=b.sid and c.cid=b.cid
外聯(lián)分左外聯(lián)和右外聯(lián):
Left outer join:查詢兩邊表的匹配記錄,且將左表的不匹配記錄也查詢出來.
Right outer join:等上,將右表不匹配記錄也查詢出來.
代碼如下:
select a.realname,b.score from stu_student as a left outer join stu_score as b on a.sid=b.sid
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/1018.html