02-SQL语句给表起别名&SQL中的表连接

什么情况下需要给表起别名?

1.表名比较长
2.当需要在多个表中进行查询并把查询内容同时输出的时候
3.当需要进行表连接的时候(其实和2一个意思,一般情况下多个表进行连接主要目的就是为了从多个表中查询所需要的内容)
直入主题:
格式select a.name,a.number,b.age from people_news as a,student_news as b where a.name="xiaoming"and b.age=12;
有两个表一个表1people_new一个表2student_new,现在需要从两个表中找出名字是xiaoming同时年龄是12的成员信息。其中给表1起了一个名字“a”表2起了一个名字“b”,可以体会一下。
通用格式:select a.字段1,a.字段2 from <table name> as a;其中a就是<table name>的新表名。
其中as是可以省略的,但是作为新手建议大家不要省略。
作为补充这里说一下给某个列(字段)起别名的操作:
格式:

1.select 字段1 as 字段1别名 from <table name>
2.select 字段1 as 字段1别名,字段2 as 字段2别名 from <table name>

这样你查找出来的字段就是以你给它起的别名显示了。

SQL中的表连接

在了解表连接的时候你要明白一点,表为什么可以链接,主要在于每个表都会有一个唯一的主键和若干外键,主键是一个表的唯一标识,如在表1中的主键是不允许重复的,而在表2中除了主键的其他字段(外键)会和表1 的主键一致,如此我们就可以用这个字段来完成两个表的连接。
连个表连接的条件:
1.有相同字段,字段在两个表中都是外键 。
2.有相同字段,字段在两个表中都是主键。
3.有相同字段,字段在两个表中一个是外键一个是主键。
表连接分类:
1.直连接 inner join on...如果表中有至少一个匹配,则返回行
2.左连接life join on...即使右表中没有匹配,也从左表返回所有的行
3.右连接right jion on....即使左表中没有匹配,也从右表返回所有的行
4.全连接full join on...只要其中一个表中存在匹配,就返回行
这几句解释理解起来会比较难一点,大家还是最好找个例子练习一番更容易理解。
看一个例子:

select a.data,a.school_name,a.pay_count,b.type from table_pay_all as a
inner join table_pay_all_type as b
on a.date=b.date
order by date desc;

在表1 table_pay_all和表2 table_pay_all_type两个表中筛选字段date、school_name、pay_count、和type其中type属于表2其他字段属于表1 ,为了码代码方便把两个表分别命名为a和b,并把查找的字段进行连接。其中on后边为连接的条件即两个表中相同的字段其中两个字段均为两个表的外键。
(相互学习,不断更新…)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值