首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >需要有关复杂查询的帮助

需要有关复杂查询的帮助
EN

Stack Overflow用户
提问于 2011-05-12 06:32:40
回答 2查看 55关注 0票数 0

我的结果集看起来很好,但我得到了额外的重复结果,这是我想要避免的,下面是这种情况:

我使用两个表:

订单

代码语言:javascript
运行
复制
id|companyname|routeid|orderdate
1 |company1   | 23dsa | 
2 |company1   | 23dsa | 2011-04-28
3 |company1   | 23dsa | 2011-04-05
4 |company2   | 24gcc | 2011-22-05

车辆

代码语言:javascript
运行
复制
id| vehiclename | routeid
1 | van1        | 23dsa 
2 | van2        | 24gcc 

这是我的问题1:

代码语言:javascript
运行
复制
select t1.companyname, max(t1.orderdate) as orderdate
from order t1, vehicle t2 where t1.routeid=t2.routeid
group by t1.companyname, t1.orderdate
order by t1.id

这是查询2:

代码语言:javascript
运行
复制
 select t1.companyname, max(t1.orderdate) as orderdate
    from order t1, vehicle t2 where t1.routeid=t2.routeid
    group by t1.companyname, t1.orderdate having count(1) = 1
    order by t1.id

这是我的结果:

代码语言:javascript
运行
复制
companyname | orderdate
company1    |  
company1    | 2011-04-28
company1    | 2011-04-05
company2    | 2011-22-05

我希望是这样的:

代码语言:javascript
运行
复制
companyname | orderdate
company1    | 2011-04-28
company2    | 2011-22-05

我缺少的不是null:

代码语言:javascript
运行
复制
select t1.companyname, max(t1.orderdate) as orderdate
    from order t1, vehicle t2 where t1.orderdate is not null and t1.routeid=t2.routeid
    group by t1.companyname, t1.orderdate
    order by t1.id
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-05-12 06:40:43

下面是什么:

代码语言:javascript
运行
复制
SELECT
    companyname, MAX(orderdate) AS orderdate
FROM
    `order`
GROUP BY
    companyname
ORDER BY
    id

如果你需要车里的东西:

代码语言:javascript
运行
复制
SELECT
    companyname, MAX(orderdate) AS orderdate
FROM
    `order` o, vehicle v
WHERE
    o.routeid=v.routeid
GROUP BY
    companyname
ORDER BY
    o.id
票数 0
EN

Stack Overflow用户

发布于 2011-05-12 06:39:20

代码语言:javascript
运行
复制
select t1.companyname, max(t1.orderdate) as orderdate
from order t1, vehicle t2 where t1.routeid=t2.routeid
group by t1.companyname
order by t1.id

不需要按orderdate分组,因为您只选择了一个。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5971357

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档