SQLServer 初级问题

来源:百度知道 编辑:UC知道 时间:2024/05/08 15:53:24
默认数据库 pubs
select a.au_lname as '名', a.au_fname as '姓', t.title as '书籍名称'
from authors as a join titleauthor as ta on a.au_id = ta.au_id
join titles as t on ta.title_id = t.title_id
where a.au_lname = 'Green' and a.au_fname = 'Marjorie'

1、a.au_lname 中为什么要有 "a."
2、join 是什么意思
非常感谢

1.用"a"是为了方便你输入,a就是authors,你不用a也可以,但用到authors 的地方你都得输这个字段,感觉麻烦。“authors as a ”的意思就是用 a替代 authors.
2.join 就是进行连接。
jion 语句有三种,inner join, left outer join 和 right outer join 都可以简写,分别为jion,left join,right jion。
jion语句可以用来组合两个表中的记录,只要在公共字段之中有相符的值即可,该语句联合两个表查询得到的结果是可以添加新的数据,可以把它看成将两个具有相关内容的表联接在一起新生成的表,而一般的select 语句没有这个功能。
1) 内连接,inner join ... on
语句格式:
FROM (((表1 INNER JOIN 表2 ON 表1.字段号=表2.字段号) INNER JOIN 表3 ON 表1.字段号=表3.字段号) INNER JOIN 表4 ON Member.字段号=表4.字段号) INNER JOIN 表X ON Member.字段号=表X.字段号

例子:

SELECT *

FROM (((Member INNER JOIN MemberSort ON Member.MemberSort=MemberSort.MemberSort) INNER JOIN MemberLevel ON Member.MemberLevel=MemberLevel.MemberLevel) INNER JOIN MemberIdentity ON Member.MemberIdentity=MemberIdentity.MemberIdentity) INNER JOIN Wedlock ON Member.Wedlock=Wedlock.Wedlock

ORDER BY MemberDate DESC

内连接的功能是,把两个表相关联的记录列出来,必须是相关联的记录。