设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1589|回复: 1
打印 上一主题 下一主题

[查询] [求助]MDB升迁至SQL后的sql查询语句

[复制链接]
跳转到指定楼层
1#
发表于 2006-4-15 23:34:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
原来的sql查询语名:SELECT 班级.班级, 成绩单.学年度编号, 学生名单.班中序号, 学生名单.姓名, 成绩单.课程编号, 成绩单.段考成绩, 成绩单.期评成绩, 成绩单.学期补考, 成绩单.毕业补考, 学生名单.班级编号, 学年度.学期, 课程名称.课程名称, IIf(成绩单.学期补考="补及" Or 成绩单.毕业补考="补及","补及",IIf(IsNull(成绩单.期评成绩),"0",成绩单.期评成绩)) AS 成绩评定, 学生名单.学籍号
FROM 班级 INNER JOIN (学生名单 INNER JOIN (学年度 INNER JOIN (课程名称 INNER JOIN 成绩单 ON 课程名称.课程编号 = 成绩单.课程编号) ON 学年度.学年度编号 = 成绩单.学年度编号) ON 学生名单.学籍号 = 成绩单.学籍号) ON 班级.班级编号 = 学生名单.班级编号
ORDER BY 班级.班级, 成绩单.学年度编号, 学生名单.班中序号, 课程名称.课程名称, 学生名单.学籍号;


该语句正常

将MDB数据库迁至SQL数据库后的查询语句:

SELECT TOP 100 PERCENT dbo.学年度.学期, dbo.班级.班级, dbo.学生名单.学籍号,
      dbo.学生名单.班中序号, dbo.学生名单.姓名, dbo.课程名称.课程名称,
      IIf(dbo.成绩单.学期补考 = '补及' OR
      dbo.成绩单.毕业补考 = '补及', '补及', IIf(IsNull(dbo.成绩单.期评成绩), '0',
      dbo.成绩单.期评成绩)) AS 成绩评定
FROM dbo.班级 INNER JOIN
      dbo.学生名单 ON dbo.班级.班级编号 = dbo.学生名单.班级编号 INNER JOIN
      dbo.成绩单 ON dbo.学生名单.学籍号 = dbo.成绩单.学籍号 INNER JOIN
      dbo.课程名称 ON dbo.成绩单.课程编号 = dbo.课程名称.课程编号 INNER JOIN
      dbo.学年度 ON dbo.成绩单.学年度编号 = dbo.学年度.学年度编号
ORDER BY dbo.学年度.学期, dbo.班级.班级, dbo.学生名单.班中序号, dbo.学生名单.学籍号,
      dbo.课程名称.课程名称

老提示'='附近在语法错误,不知如何改正,请高手指点。

[此贴子已经被作者于2006-4-15 15:36:10编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2006-4-16 04:50:00 | 只看该作者
已找到解决的方法,原因是 SQL中不能用IFF函数,可将

IIf(dbo.成绩单.学期补考 = '补及' OR
      dbo.成绩单.毕业补考 = '补及', '补及', IIf(IsNull(dbo.成绩单.期评成绩), '0',
      dbo.成绩单.期评成绩)) AS 成绩评定


改为:

CASE WHEN 学期补考 = '补及' THEN '补及' WHEN 毕业补考 = '补及' THEN '补及' ELSE 期评成绩
       END AS 成绩评定
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-6-23 20:08 , Processed in 0.080794 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表