求一SQL语句!!!
表A
Aid Aname
1 贵州
2 北京
3 上海
表B
Bid Bname Bclass time
1 张燕 1 2005
2 王海 1 2006
3 陈磊 2 2007
4 汪峰 3 2008
求:
查询Aname 当Bclass=Aid 并按time排序~~
select A.Aname from A inner join B on A.Aid=B.Bclass group by Aname
求上面这句话怎么按time排序?
------解决方案--------------------select a.aname,b.time as 'time ' from a inner join b on a.aid=b.bclass group by a.aname,b.time order by 'time ' desc
------解决方案--------------------DISTINCT 关键字可从 SELECT 语句的结果中除去重复的行。如果没有指定 DISTINCT,那么将返回所有行,包括重复的行。例如,如果在 titleauthor 中选择所有作者 ID 时未使用 DISTINCT,那么将会返回下列行(其中包括一些重复的行):
USE pubs
SELECT au_id
FROM titleauthor
下面是结果集:
au_id
-----------
172-32-1176
213-46-8915
213-46-8915
238-95-7766
267-41-2394
267-41-2394
274-80-9391
409-56-7008
427-17-2319
472-27-2349
486-29-1786
486-29-1786
648-92-1872
672-71-3249
712-45-1867
722-51-5454
724-80-9391
724-80-9391
756-30-7391
807-91-6654
846-92-7186
899-46-2035
899-46-2035
998-72-3567
998-72-3567
(25 row(s) affected)
而使用了 DISTINCT 后,就能够除去重复项,而只查看唯一的作者 ID:
USE pubs
SELECT DISTINCT au_id
FROM titleauthor
下面是结果集:
au_id
-----------
172-32-1176
213-46-8915
238-95-7766
267-41-2394
274-80-9391
409-56-7008
427-17-2319
472-27-2349
486-29-1786
648-92-1872
672-71-3249
712-45-1867
722-51-5454
724-80-9391
756-30-7391
807-91-6654
846-92-7186
899-46-2035
998-72-3567
这是我在帮助文档中COPY下来的,其实按下F1,很多问题都能找到解决办法,不用花时间在这里等的。
------解决方案--------------------select distinct a.aname,b.time as 'time ' from a inner join b on a.aid=b.bclass group by a.aname,b.time order by 'time ' desc
------解决方案--------------------本来就是1对多怎么能只是显示一个呢