Foxtable(狐表)用户栏目专家坐堂 → 帮忙检查一下SELECT语句...(已解决)


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

主题:帮忙检查一下SELECT语句...(已解决)

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
帮忙检查一下SELECT语句...(已解决)  发帖心情 Post By:2009/4/8 11:33:00 [显示全部帖子]

select 床位,姓名,表A.ID,项目,剂量,用法,用量,单位,单价 from 表A inner join 表B on 表A.ID = 表B.ID where 停止日期 is null and ID in (2009111,2009114,2009121) order by 床位

执行上述代码提示""

删除紫色代码执行正常...


图片点击可在新窗口打开查看此主题相关图片如下:001.jpg
图片点击可在新窗口打开查看

原数据是外部表,这里我做了个简单示例为内部表,请老师指点...

select 床位,姓名,{表A}.ID,项目,规格,单价 from {表A} inner join {表B} on {表A}.ID = {表B}.ID where 日期 is null and ID in (001,005,008) order by 床位

从ID为001,005,008中提取日期为空的项目数据,并以床位为排序依据...

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试文件.table
[此贴子已经被作者于2009-4-8 14:29:08编辑过]

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/4/8 13:39:00 [显示全部帖子]

select 床位,姓名,{表A}.ID,项目,规格,单价 from {表A} inner join {表B} on {表A}.ID = {表B}.ID where 日期 is null and ID in (001,005,008) order by 床位

从ID为001,005,008中提取日期为空的项目数据,并以床位为排序依据...

原数据是外部表,这里我做了个简单示例为内部表,请老师指点...

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试文件.table

[此贴子已经被作者于2009-4-8 13:40:38编辑过]

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/4/8 13:58:00 [显示全部帖子]

图片点击可在新窗口打开查看怪事了....

原来项目文件里的ID in (....  ... ) 括号内是通过复合列表框生成的字符串,生成如(001,002,003)的字符串,如果没跨表查询就没有提示错误.....一加上跨表查询就出错...为什么?

原项目用的是外部SQL数据表

难道不跨表查询用(001,002,003)
跨表就用('001','002','003')???
[此贴子已经被作者于2009-4-8 14:01:00编辑过]

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/4/8 14:02:00 [显示全部帖子]

为何不跨表查询又正常呢?同样的代码生成ID 字符串...

原查询代码为
select ID,项目,规格,单价 from {表A} where 日期 is null and ID in (001,005,008)

我回单位再测试一下....图片点击可在新窗口打开查看
[此贴子已经被作者于2009-4-8 14:04:09编辑过]

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


加好友 发短信 菜鸟中的老鸟
等级:七尾狐 帖子:1486 积分:10064 威望:0 精华:9 注册:2008/11/14 8:54:00
  发帖心情 Post By:2009/4/8 14:30:00 [显示全部帖子]

以下是引用cpayinyuan在2009-4-8 14:07:00的发言:

不仅仅是引号的问题,最关键的区别是在 Where 日期 is Null and {表A}.Id in ('001','005','008') ……    ,ID前面加了一个{表A},原因贺老师已经在前面讲清楚了。

[此贴子已经被作者于2009-4-8 14:10:16编辑过]

最关键问题就是出在  表A.ID IN (,,,,)  这里....谢谢两位大师,问题解决...


 回到顶部