问一句sql语句

weixin_33001743 2016-10-19 08:52:08
有两个表:
CREATE TABLE Customers ( -- df: mult=1
custid INTEGER PRIMARY KEY,
cname VARCHAR(14), -- df: word=names.txt sub=power rate=0.016
country CHAR(3) -- df: word=:GBR,USA,ITA,CHN,JPN
);
CREATE TABLE Orders ( -- df: mult=3
ordid INTEGER PRIMARY KEY,
odate DATE, -- df: start=2015-01-01 end=2016-09-30
ocust INTEGER NOT NULL REFERENCES Customers -- df: null=0
);

现在要获得customer的ID,NAME以及这个customer最近一条订单的DATE
我的写法是
select c.custid, c.cname, o.odate
from customers c, orders o
where c.custid = o.ocust
and o.odate in (select m_date from (select ocust, max(odate) as m_date
from orders
group by ocust) as table1)
但是我得出来的数据比答案要多,求解
...全文
731 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

954

社区成员

发帖
与我相关
我的任务
社区描述
PostgreSQL相关内容讨论
sql数据库数据库架构 技术论坛(原bbs)
社区管理员
  • PostgreSQL社区
  • yang_z_1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧