Foxtable(狐表)用户栏目专家坐堂 → sql问题


  共有2645人关注过本帖树形打印复制链接

主题:sql问题

帅哥哟,离线,有人找我吗?
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/12 20:27:00 [显示全部帖子]

准考证号相同这个没看懂是什么意思?

Select * from {考室考号} where 类别 Like "%物%" order by 准考证号

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/12 21:37:00 [显示全部帖子]

好像说的很有道理,但是我还是您不知道到底要做什么。

2楼的sql有没有效果?如果没有,具体有什么问题?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/13 9:16:00 [显示全部帖子]

易表我完全没有用过,不懂。

就1楼实例,举例说明一下需要什么结果?

这个?
Select a.*,b.考室 As B考室 from {考室考号} As a Inner join {班级安排表} As b on a.准考证号=b.准考证号 where 类别 Like "%物%" order by a.准考证号

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/13 9:47:00 [显示全部帖子]

意思是把“生成考室考号”表的数据转换为“班级安排”这种格式的表格数据?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/13 11:23:00 [显示全部帖子]

科目多使用sql 反而麻烦,建议使用代码处理:http://www.foxtable.com/webhelp/topics/2965.htm

或者直接做个交叉统计:http://www.foxtable.com/webhelp/topics/0678.htm

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/16 15:37:00 [显示全部帖子]

优化一点点,其它科目自己补上,如果还是慢,可能要从表结构设计上考虑了

If e.DataCol.Name = "考试科目_准考证号" Then
    If e.NewValue Is Nothing Then
        e.DataRow("语数英物历_考室地点") = Nothing
        e.DataRow("化学_考室地点") = Nothing
    Else
        Dim dr As DataRow
        
        dr = DataTables("生成考室考号").Find("[准考证号] = '" & e.NewValue & "' And [类别]  Like '物*'")
        If dr IsNot Nothing Then
            e.DataRow("语数英物历_考室地点") = dr("考室地点")
        End If
        dr = DataTables("生成考室考号").Find("[准考证号] = '" & e.NewValue & "' And [类别]  Like '化*'")
        If dr IsNot Nothing Then
            e.DataRow("化学_考室地点") = dr("考室地点")
        End If
    End If
End If


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/16 15:59:00 [显示全部帖子]

请上传实例说明,不知道表结构和数据,无法回答

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/10/16 16:54:00 [显示全部帖子]

update {班级安排表},{生成考室考号} set {班级安排表}.[语数英物历_考室地点]={生成考室考号}.考室地点 where {班级安排表}.考试科目_准考证号={生成考室考号}.准考证号 And {生成考室考号}.类别  Like '物%'

update {班级安排表},{生成考室考号} set {班级安排表}.[化学_考室地点]={生成考室考号}.考室地点 where {班级安排表}.考试科目_准考证号={生成考室考号}.准考证号 And {生成考室考号}.类别  Like '%'

 回到顶部