当前位置:主页>销售管理软件> 列表

求一个SQL语句,谢谢!!!!急!!! 找销售管理软件免费版

进销存软件版1楼: 在SQL一个数据表中“INVLB”中有如下数据
LB001 LB002 LB003 LB004
10001 200401 5.00 11.12
10001 200402 6.00 13.11
10002 200401 4.1 12.12
10001 200406 7.00 13.12
10003 200405 5.2 12.3
10003 200410 6.2 11.23
10002 200409 5.1 11.12
10003 200502 7.2 15.6

如何下SQL求得LB001列中各种编号中,LB002最大的数据值LB003与LB004
查询结果应如下:
10001 200406 7.00 13.12
10002 200409 5.1 11.12
10003 200502 7.2 15.6

2楼: select distinct a.*
from INVLB a,
(
select LB001,max(LB002)LB002
from INVLB
group by LB001
)b
where a.LB001=b.LB001 and a.LB002=b.LB002
----------------------------
如果表超大,而又没有排除重复的话,可以用EXISTS代替DISTINCT 如服装店记账软件

3楼: select distinct(LB001),max(LB002),max(LB003),max(LB004) from 表名 group by LB001

4楼: select distinct a.*
from INVLB as A
innor join


((select LB001,max(LB002) AS Max_LB002 from INVLB group by LB001 ) as B
on a.LB001=b.LB001 and a.LB002=b.LB002)

5楼: select distinct a.*
from INVLB a,
(select LB001,max(LB002)LB002
from INVLB
group by LB001
)b
where a.LB001=b.LB001 and a.LB002=b.LB002

6楼: select lb001,max(lb002),max(lb003),max(lb004)
from 表名
group by lb001

我的SQL能通过

进销存软件版7楼: 楼上没理解题意,建议扣5分!
[:D]

8楼: 晕,有点矛盾啊,它lb003最大的时候,lb004不是最大的啊!?楼主的意思也没表达清楚吧

9楼: select a.*
from INVLB a,
(select LB001,max(LB002)LB002
from INVLB
group by LB001
)b
where a.LB001=b.LB001 and a.LB002=b.LB002

10楼: select t1.*
from
INVLB t1
join
(select LB001, Max(LB002) as LB002 from INVLB group by LB001) t2
on t1.LB001 = t2.LB002 and t1.LB002 = t2.LB002

11楼: select * from invlb where (lb001,lb002) in (select lb001,max(lb002) from invlb group by lb001 )

12楼: 说得好让人难理解呀。
楼主的意思是不是找同种编号中 LB002值最大的那条记录?如果是的话那恭喜你有答案了:


SELECT *
FROM (SELECT MAX(lb002) AS LB
FROM U_Test
GROUP BY lb001) B INNER JOIN
U_Test ON B.LB = U_Test.lb002
其中U_Test 是我的表名,改一下* 为你所需字段就行了。
可以发分了。
========================================================
中国原创软件园 www.dhss.cn 欢迎您的加盟! 如国内erp软件

13楼: 看了半天,俺就觉得还是俺写的好,语句少还能满足要求,呵呵!

========================================================
中国原创软件园 www.dhss.cn 欢迎您的加盟!

进销存软件版14楼: xcplates,
你的根本就是錯的

15楼: 楼主都不在了,你们吵什么,一人扣5分 :)

16楼: select a.LB001,LB002,LB003,LB004
from INVLB a ,(select LB001 max(LB002) Mlb002 from invlb group by LB001) b where a.LB001 =b.lb001 and a.lb002=b.mlb002

没测试,意思差不多

17楼: to forest96:请指教,什么地方错了?我专门建了表做的实验。结果和楼主要求的一样。
如果你有时间请来群 14799474 (或加我QQ:3098167165)赐教。谢谢。

18楼: 欢迎楼主来群里讨论一下你的问题 14799474

19楼: select * from INVLB a
where
exists
(
select lb001,max(lb002) from invlb
group by lb001
having lb001=a.lb001 and max(lb002)=a.lb002
)

20楼: to forest96:怎么不见影了,来说说我的代码哪里错了。

进销存软件版21楼: 楼上的你好:
你说的不怎么详细呀,还有:xcplates你写的也太杂了没有必要
写的那么多行代码?:),:),:):):):)

22楼: to 楼上的:代码行数多好办呀,改成一行不就是了:)
我思路很好懂:分级筛出最大日期,再根据所筛选 出的lb0002做一个联接,就这么简单。 如销售管理软件免费版

23楼: jsxjd采用的是相关子查询
bbgsgs采用的连接
都是正确的