由于公司的网站马上就要上线,领导自己忙不过来。于是乎理所当然的我也开始接触了这个网站的数据库(以前一直没看)。开始了我的增删改查之旅=-=。先吐槽下,公司用的是dedecms,也不全是dedecms的也有我们领导写的。不过用起来真的不是很方便啊。
而且接手别人的东西总感觉不如自己写的来的习惯!
下面进入正题。
首先是sql的查询语句
目前为止接触了多表联合查询,join查询。
select A.name,A.time,B.name,C.* from A,B,C where A.id=B.aid and C.id= B.cid
这段代码就是三个表之间的查询了 而且用到了表的简写。
比如我现在有3个表分别叫做Wangwang ,Zhaozhao ,Yangyang
当A代表Wangwang ,B代表Zhaozhao,C代表Yangyang这段代码就可以写为
select A。name,A。time,B。name,C。* from `Wangwang` A,`Zhaozhao` B, `Yangyang` c where A.id = B.id and C.id= B.cid
where后面的条件根据你表中的关系来写的。
join查询有三个方法
1:inner join 是显示关联字段之间相等的值
2:left join 返回左表中所有相等的信息
3:right join 返回右表中所有相等的信息
其实这三个根据单词的意思就可以理解了。我想大家英语都比我好吧:)
下面说下inner join的方法,因为我大部分情况下用inner join 就能满足了
select Wangwang.name,Zhaozhao.* from Wangwang inner join Zhaozhao on wangwang.ID= Zhaozhao.Wid
由于是inner join 所以对于左右的区别不是很严重 如果用其余的两种方法,那么你就要好好想想这两个表的位置了。不明白的自己建几个表看看就差不多了。真心不一样!