现在我们先来看在SQL 关联查找JOIN,
这是我初期的一大问题,两个表之间怎么建立关联,实际上,有个东西叫做JOIN,然后还有INNER JOIN,RIGHT JOIN,LEFT JOIN
我基本上用的都是LEFT JOIN,那么RIGHT JOIN大家懂得=A=其他我也没用过
不同的参考:
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
这里举一个M-Show用到的栗子:
代码如下 | 复制代码 |
SELECT show_person.uid, show_person.nickname, show_category.category,show_category.id FROM show_person Left JOIN show_category on show_person.category=show_category.id WHERE show_category.id=$category ORDER BY show_person.uid |
把person和category建立关联,主表(自造词= =)是person,所以person完整输出,即使没有category定义。
SELECT部分用表.字段,如果一个表要全部选中,字段选择用 * ,但是据说效率会变低
现在再次用到又学到了点新的东西。
首先还是这段代码(还是的理由是因为上一篇文章):
代码如下 | 复制代码 |
SELECT pr_rates.pid,count(pr_rates.ip),pr_works.title,pr_works.realname,pr_college.name FROM pr_works RIGHT JOIN pr_rates ON pr_rates.pid=pr_works.pid LEFT JOIN pr_college ON pr_works.college=pr_college.id GROUP BY pid ORDER BY count(pr_rates.ip) DESC |
为什么会有Left Join Right Join,相当于一个人站在中间,左右手拉手,两个人自然是没有感觉的,其实中间一个人起到了连结的左右,他的左手连通着一个人的右手,右手连通着一个人的左手,建立了关联,于是乎因此我们选择一个与两个表都有共同项的表作为中间人,差不多就是这个意思。
电神魔傀2街机免费版 官方版v1.2.1
下载三国战纪2手游腾讯渠道服 安卓版v2.41.0.0
下载三国战纪2手游抖音渠道服 安卓版v2.41.0.0
下载三国战纪2折扣服 安卓版v2.41.0.0
下载叫我大掌柜小米版 安卓版v7.4.4
叫我大掌柜小米版是这款模拟经营类手游的渠道服版本,在此版本中
cooking fever正版 安卓最新版v23.0.2
cooking fever正版是一款非常好玩的模拟经营类手游
咖啡厅的生活故事 最新版v1.7
咖啡厅的生活故事是一款模拟经营游戏,玩家们在游戏中可以经营一
迅猛龙模拟器金币不减反增版 v1.1.8
迅猛龙模拟器无限金币版是一款动物模拟类游戏,玩家们将在游戏中
泽塔奥特曼升华器免广告版 v1.4
泽塔奥特曼升华器去广告版是游戏的破解版本,在该版本中为玩家去