楼主: bluechip
1749 8

SQL的查询问题求助 [推广有奖]

  • 0关注
  • 0粉丝

已卖:276份资源

博士生

54%

还不是VIP/贵宾

-

威望
0
论坛币
663 个
通用积分
0.0600
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
8401 点
帖子
181
精华
0
在线时间
320 小时
注册时间
2009-2-20
最后登录
2013-7-6

楼主
bluechip 发表于 2010-8-3 21:59:08 |AI写论文
30论坛币
有三列数据,第一列是日期,第二列是时间,第三列是价格,
date    time    price
1         9:00    1
1         9:01    2
1         9:01    3
...
2         9:00    10
2         9:01    20
...
如何查出每天的价格最大值所对应的时间,多谢了~~

我试了这样的语句,但是会报错
SELECT max(cp),trtime
FROM Sheet1
group by trdate;

最佳答案

lnb1981 查看完整内容

4楼正解 也可以写成一个语句的: select a.date,a.time,a.price from sheet1 a,(SELECT date,max(price) as MaxP from sheet1 group by date) b where a.date=b.date and a.price=b.MaxP;
关键词:sql Select Group sheet Price 求助 查询 sql

沙发
lnb1981 发表于 2010-8-3 21:59:09
4楼正解
也可以写成一个语句的:
select a.date,a.time,a.price
from sheet1 a,(SELECT date,max(price) as MaxP
from sheet1
group by date) b
where a.date=b.date and a.price=b.MaxP;

藤椅
lnb1981 发表于 2010-8-3 22:17:17
是在哪里用sql?
为啥前后用的字段名不一样啊?
不过从语法上讲应该没问题。

板凳
bluechip 发表于 2010-8-3 22:19:45
字段名不一样是什么意思啊?
我在access里用的

报纸
love_hellen 在职认证  学生认证  发表于 2010-8-3 22:21:05
如果你用的是sybase可以这样试试:
--创建临时表#tmp1
select date,max(price) as price
into #tmp1
from sheet1
group by date

go

select a.date,b.time,a.price
   from #tmp1 a,
            sheet1 b
where a.date = b.date
      and a.price = b.price
这样取出来的就应该是每天最大价格对应的时间。但问题是,如果最高价格为多个,那么时间就会取出多个

地板
bluechip 发表于 2010-8-3 22:21:28
我用的是access,office的那个,不知道哪位高人会用这个编一下
有多个最大值是个问题,那结果最好输出三列,日期,时间,最大值

7
bluechip 发表于 2010-8-4 09:32:39
多谢了,再问一下,如果price这一列是price1和price2两列的差,也就是说一开始一共有四列date,time,price1,price2,该怎么修改一下

8
lnb1981 发表于 2010-8-4 13:49:01
select a.date,a.time,a.price1,a.price2,a.price1-a.price2 as price
from sheet1 a,(SELECT date,max(price1-price2) as MaxP
from sheet1
group by date) b
where a.date=b.date and a.price1-a.price2=b.MaxP;

9
bluechip 发表于 2010-8-4 16:32:04
如果再想加限制条件呢,比如time必须大于某个值,我加在where里面好像不行,还请高手指点啊~~

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-25 22:51