首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

请一个求最大数的sql解决方案

2012-04-06 
请一个求最大数的sqltable 1idnametable 2idUserNametable1Idtable 11 name12 name2table 21 user1 12 use

请一个求最大数的sql
table 1
id
name
table 2
id 
UserName
table1Id

table 1 
1 name1
2 name2

table 2
1 user1 1
2 user2 1
3 user3 2
我希望的数据
2 user2 1
3 user3 2

也就是有相同的table1Id的取tableid2大的那个记录

谢谢


[解决办法]

SQL code
CREATE TABLE TABLE2(id int,UserName nvarchar(20),table1Id int)INSERT INTO TABLE2 SELECT 1,'user1',1 UNION ALL                    SELECT 2,'user2',1 UNION ALL                    SELECT 3,'user3',2                        SELECT  [t3].[id] AS [Id], [t3].[UserName], [t3].[table1Id] AS [Table1Id]FROM (    SELECT [t0].[table1Id]    FROM [TABLE2] AS [t0]    GROUP BY [t0].[table1Id]    ) AS [t1]OUTER APPLY (    SELECT TOP (1) 1 AS [test], [t2].[id], [t2].[UserName], [t2].[table1Id]    FROM [TABLE2] AS [t2]    WHERE (([t1].[table1Id] IS NULL) AND ([t2].[table1Id] IS NULL)) OR (([t1].[table1Id] IS NOT NULL) AND ([t2].[table1Id] IS NOT NULL) AND ([t1].[table1Id] = [t2].[table1Id]))    ORDER BY [t2].[id] DESC    ) AS [t3]ORDER BY [t3].[id] DROP TABLE TABLE2Id          UserName             Table1Id----------- -------------------- -----------2           user2                13           user3                2
[解决办法]
SQL code
select * from tb2 where id in(select distinct MAX(id) id from tb2 group by table1Id) 

热点排行