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


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

主题:SELECT问题

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/11 14:28:00 [显示全部帖子]

cmd.CommandText = "Select * FROM {出库} INNER JOIN {采购明细} ON {采购明细}.型号= {出库}.型号"
[此贴子已经被作者于2014-9-11 14:28:37编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/11 16:35:00 [显示全部帖子]

以下是引用utcxray在2014-9-11 16:32:00的发言:
谢谢,大问题已解决,但无法再添加分组,怎么回事

 

什么意思?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/11 16:45:00 [显示全部帖子]

改一下

 

cmd.CommandText = "Select {出库}.*, {采购明细}.供应商 FROM {出库} INNER JOIN {采购明细} ON {采购明细}.型号= {出库}.型号"


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/11 17:33:00 [显示全部帖子]

 数据肯定正确,是不是你还要加上年?

 

Dim cmd As New SQLCommand

Dim dt As DataTable

cmd.CommandText = "Select {出库}.*, {采购明细}.供应商 FROM {出库} INNER JOIN {采购明细} ON {采购明细}.型号= {出库}.型号"

dt = cmd.ExecuteReader()

'对临时进行分组统计

Dim b As New CrossTableBuilder("统计表111",dt)

b.HGroups.AddDef("供应商")

b.HGroups.AddDef("型号")
b.VGroups.AddDef("出库日期",DateGroupEnum.Year,"{0}年")
b.VGroups.AddDef("出库日期","{0}月")

b.Totals.AddDef("出库数量")

b.HorizontalTotal = True

b.VerticalTotal = True

Tables("采购管理_Table18").DataSource = b.BuildDataSource()

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/11 18:06:00 [显示全部帖子]

 改成这样,如果还错,就上传例子

 

cmd.CommandText = "Select {出库}.*, {采购明细}.供应商 FROM {出库} Left JOIN {采购明细} ON {采购明细}.型号= {出库}.型号"


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/12 10:30:00 [显示全部帖子]

 回复15楼,不是叫你把项目发上来,是叫你做一个新的例子,把两个表的数据弄进去发上来。


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/12 11:43:00 [显示全部帖子]

 测试了一下,数据正确啊。

 

 例子的哪一行的数据不正确?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/12 12:01:00 [显示全部帖子]

 代码

 

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "Select *, (select top 1 供应商 from {采购明细} b where a.型号=b.型号) as 供应商 FROM {出库} a"
dt = cmd.ExecuteReader()
'对临时进行分组统计
Dim b As New CrossTableBuilder("统计表111",dt)
b.HGroups.AddDef("供应商")
b.HGroups.AddDef("型号")
b.VGroups.AddDef("出库日期","{0}月")
b.Totals.AddDef("出库数量")
b.HorizontalTotal = True
b.VerticalTotal = True
Tables("采购管理_Table2").DataSource = b.BuildDataSource()


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/12 14:11:00 [显示全部帖子]

以下是引用utcxray在2014-9-12 12:04:00的发言:
有点甜,牛啊,我再琢磨下,是有重复值吗,请告诉我原因好吗

 

嗯嗯,是有重复值。你把SQL语句执行一次看结果

 

http://www.foxtable.com/help/topics/1484.htm

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/9/12 17:24:00 [显示全部帖子]

 你想做一个模拟执行sql的窗口?

 

 你可以这样写,红色代码,换成你对应的sql语句

 

Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.CommandText = "Select *, (select top 1 供应商 from {采购明细} b where a.型号=b.型号) as 供应商 FROM {出库} a"
dt = cmd.ExecuteReader()

 

Tables("采购管理_Table2").DataSource = dt


 回到顶部
总数 11 1 2 下一页