sql 不同表的排序

来源:百度知道 编辑:UC知道 时间:2024/05/24 03:50:26
假如我用两个表
一个是A表,A表里有字段1
一个是B表,B表里有字段2
sql="select * from b"
我写了这个样一个Sql 句子,但我想以A表里的字段1做为B表的sql句子的排序,要怎么写?

一、SQL语句排序的字段必须出现在SELECT后面的选择列表里面,要让结果以A.字段1排序,就必须选择出它,SQL的前面部分就是:SELECT b.*, a.字段1

二、要在选择B表数据的同时选择A表的某些字段,这两个表必须有一定的关系,然后把他们连接起来,那么SQL的FROM部分是:FROM B INNER JOIN A ON A.关键字段=B.关键字段

举例:
A表字段有:学号、姓名、性别、住址、电话
B表字段有:学号、语文、数学

现在要显示B表的总成绩,但排序要求是按姓名,不是成绩和学号,那么SQL如下:

SELECT B.学号, B.语文+B.数学, A.姓名 FROM B INNER JOIN A ON A.学号=B.学号

如果是涉及2个表的,你在a表和b表中应该是有一个字段可以关联的,这里假设叫字段x,你可以这样写

select b.字段1,b.字段2.... from b,a where b.字段x=a.字段x order by a.字段1