MySQL连接查询
多表查询:(多张表中数据集合到一张表中)
SELECT USER_NAME AS '昵称‘,GNAME AS '游戏名称’,SCORE AS '分数‘
FROM USERS,GAMES,SCORES
WHERE USERS.USER_QQ=SCORES.USER_QQ
AND GAMES.GNO=SCORE.GNO
连接查询:内连接和外连接
内连接:相连接的两张表地位平等,如果两张表内容不对应则不做连接。
隐式内连接:FROM后面直接出现多个表名。
显式内连接:SECLET USER_NAME FROM TABLE1 [INNER] JOIN TABLE2 ON TABLE1.COL=TABLE2.COL(比隐式内连接执行速度快)
外连接:左外连接和右外连接(LETF |RIGHT[OUTER])
基础表中的数据必须出现,另一张表中数据不存在用空值表示。
先出现的成为左表,后出现的成为右表。
SECLET USER_NAME,GNO,SCORE
FROM USERS LEFT JOIN SCORES ON USERS.USER_QQ=SCORES.USER_QQ AND GNO=5