易截截图软件、单文件、免安装、纯绿色、仅160KB

Sql查询语句问题 - .NET技术 / ASP.NET

表t1
3个字段CompanyName Product EntryDate
按照时间排序显示前10条数据。
但是,每一加公司所显示的产品记录不能超过2条。
也就是说,有可能前面10条数据都是同一家公司的。那不行,必须一加公司。最多只能2条。

这是我面试碰到的一个问题。苦想了很久,也未能突破。还请高手们指教。谢谢!

 
求高手,自己顶

也就是说只显示5家公司 ? 而且是5家公司里的信息最靠前的2条数据 ??

如果是sql server 2005以上,可以用rank():
select top 10 t.CompanyName, t.Product, t.EntryDate
 from (select CompanyName, Product, EntryDate , rank() as rank over (partition by CompanyName order by entrydate) from t1 order by entrydate) t where t.rank <= 2

有点难度~~~

select * from Tb a where CompanyName in (select top 2 CompanyName from Tb where id=a.id order by CompanyName)


有点麻烦!

如果是sql server 2000,试试这个:

select top 10 a.* from t1 a where (select count(*) from t1 b where a.CompanyName = b.CompanyName and a.EntryDate < b.EntryDate) <= 2

改一下:
select top 10 a.* from t1 a where (select count(*) from t1 b where a.CompanyName = b.CompanyName and a.EntryDate < b.EntryDate) <= 2 order by a.entrydate


合在一起:

sql server 2005以上:
SQL code:

select top 10 t.CompanyName, t.Product, t.EntryDate
from (selec


相关问答:

csv文件转换成sql导入到数据库,没有数据为何?

执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......

关于Sql的问题 - .NET技术 / ASP.NET

将一个查询语句赋给一个变量,如下:
DECLARE @STR NVARCHAR(MAX)
SET @STR='SELECT * from SALE_PROD'
怎么样才能执行它呢?
请高手,仁兄,侠姐帮帮忙啊


多谢,可以啦,高手啊

直接执行就行了

exec ......

C# SQL 的UPDATETEXT 问题 - .NET技术 / C#

A表 有两个字段 
  id 唯一数字域
  InfoTxt text 类型
 我现在要把 id 不是14 的所有 InfoTxt字段 文本后面 都加上 'aaa' 
按下面执行下来 只有表最后一行加上了 'aaa' ......

Access通过Sql语句创建数据库 - .NET技术 / C#

在Access的查询中执行下面的语句,无效,提示期待select ,updata ,...
CreateTble C=Answer N="回帖表"
(
  C=ID T="INTEGER" P=No M=No N="编号" Z=false,
  C=Ques ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号