access sql语句编译不通啊
select a.用户编号 as 用户编号,a.用户名称 as 用户名称,a.区域 as 区域 ,
a.单价 as 单价, isnull(b.本期指数,0) as 本期指数 from yonghu a left join yongshui b on a.用户编号 =b.用户编码 and not exists(select 1 from yongshui t where t.用户编码=b.用户编码 and t.录入日期>b.录入日期)
大家好啊,上面这个语句在sqlserver中可以通过,但在access中就不行,那我怎么写能表达上门的意思,同时又能在access中运行啊,
拜托啦,给分的,呵呵
[解决办法]
access的isnull用法与sqlserver不同,其它的应该可以,试试
select a.用户编号 as 用户编号,a.用户名称 as 用户名称,a.区域 as 区域 ,
a.单价 as 单价, iif(isnull(b.本期指数),0,本期指数) as 本期指数1 from yonghu a left join yongshui b on a.用户编号 =b.用户编码 and not exists(select 1 from yongshui t where t.用户编码=b.用户编码 and t.录入日期>b.录入日期)
[解决办法]
帮你顶下
[解决办法]
- SQL code
select c.用户编号, c.用户名称, c.区域, c.单价, IIf(isnull(d.本期指数,), 0, d.本期指数) from ( select a.用户编号, a.用户名称, a.区域, a.单价, b.录入日期 from yonghu a left join (select id, max(录入日期) as 录入日期 FROM yongshui GROUP BY id) as b on b.id = a.id) as cleft join yongshui d on (d.id = c.id) and (d.录入日期= c.录入日期);
[解决办法]
isnull(b.本期指数,0)是SQL Server下的,ACCESS等价于iif(b.本期指数 is null, 0, b.本期指数)或是
iif(isnull(b.本期指数), 0, b.本期指数)
[解决办法]
楼主,ACCESS里面没有ISNULL,可以用IIF来代替。