Foxtable(狐表)用户栏目专家坐堂 → 请教这样查询统计如何写?


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

主题:请教这样查询统计如何写?

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


加好友 发短信
等级:狐精 帖子:3313 积分:23140 威望:0 精华:1 注册:2009/3/31 11:25:00
请教这样查询统计如何写?  发帖心情 Post By:2011/11/24 9:43:00 [只看该作者]

在SQL中有两表A和B,我想得到两表中“单号”相同及“状态”不同,并且表A中的状态不等于“出车”和“计划”;或者在表A中有的单号在表B中不存在。

我想利用SQLJoinTableBuilder得到以上结果s1

Dim jb As New SQLJoinTableBuilder("查询表1","表A")
Dim
sl As String
jb
.ConnectionName = "Sale"
jb
.AddTable("表A","单号","表B","单号")

以下如何编写,请各位指教!
sl = jb.BuildSQL()
Output.Show(sl)


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


加好友 发短信
等级:管理员 帖子:47449 积分:251065 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/11/24 10:38:00 [只看该作者]

呵呵,这种问题没有办法SQLJoinTableBuilder解决的,去一些有SQL高手的论坛问问吧,例如csdn


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


加好友 发短信
等级:狐精 帖子:3313 积分:23140 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2011/11/24 13:03:00 [只看该作者]

Dim ss1 As String = "Select * from 派车计划表 where 计划单号 not In (Select 计划单号 from 车辆配送表) and 状态 <> '运输完成' and 状态 <> '作废'"
Dim ss2 As String = "Select a.* from {派车计划表} a left join 车辆配送表 b on a.计划单号 = b.计划单号 where (a.状态 <> '运输完成') and  b.状态 = '回车确认'"
cmd.CommandText = ss1
Dim dt1 As DataTable = cmd.ExecuteReader()
cmd.CommandText = ss2
Dim dt2 As DataTable = cmd.ExecuteReader()
如何把dt1及dt2的数据同时加载到一张表中呢?

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


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2011/11/24 13:11:00 [只看该作者]

五、UNION 运算符

UNION运算符用于组合两个查询的结果。
例如有一个客户表,一个供应商表,我需要得到所有在中国的客户和供应商的名称和地址。
因为数据位于不同的表中,显然,我们需要用两个查询才能完成任务:

SELECT 公司名称, 地址 FROM {客户} WHERE 国家 = '中国' UNION SELECT 公司名称, 地址 FROM {供应商} WHERE 国家 = '中国'

两个查询的字段名称、个数、类型必须完全一致才行。


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


加好友 发短信
等级:狐精 帖子:3313 积分:23140 威望:0 精华:1 注册:2009/3/31 11:25:00
  发帖心情 Post By:2011/11/24 13:44:00 [只看该作者]

谢谢指点!!

 回到顶部