Foxtable(狐表)用户栏目专家坐堂 → 开贴学习高大尚的SQL语句


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

主题:开贴学习高大尚的SQL语句

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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/13 16:58:00 [显示全部帖子]

以下是引用狐狸爸爸在2014-2-13 16:28:00的发言:

可以


什么时候能够支持具有Group by的语句的DataTable的Load那,现在要么重新Fill,要么在数据库写死,不算太方便



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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/14 13:45:00 [显示全部帖子]

b.[零件名称] = c.[零件名称] and b.[工序] = c.[工序]

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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/16 12:36:00 [显示全部帖子]

请直接在数据库中用视图表学习如何连接各个表

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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/18 12:11:00 [显示全部帖子]

以下是引用石四在2014-2-18 11:22:00的发言:

我现在用access,就是说先在access中用视图表学习连接各个表?


是的,上面都有链接语句,多做做就熟悉SQL基本语法了


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/21 21:59:00 [显示全部帖子]

以下是引用石四在2014-2-21 9:57:00的发言:

按jspta指点的方法,得到如下查询表:

 


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

 

access上的语句:

 

SELECT DISTINCTROW Format$(计件明细.完工日期,'mmmm yyyy') AS [完工日期 按月], 计件明细.姓名 AS 姓名之总计, 计件.零件名称 AS 零件名称之总计, 计件明细.工序 AS 工序之总计, 工序表.单价, Sum(计件明细.数量) AS [数量 之 总计], Sum([单价]*[数量]) AS 金额

FROM (计件 LEFT JOIN 计件明细 ON 计件.批次=计件明细.批次) LEFT JOIN 工序表 ON 计件明细.工序码=工序表.工序码

GROUP BY Format$(计件明细.完工日期,'mmmm yyyy'), 计件明细.姓名, 计件.零件名称, 计件明细.工序, 工序表.单价, Year(计件明细.完工日期)*12+DatePart('m',计件明细.完工日期)-1;

参考以上将狐表SQL语句改成:

 

Select Month(完工日期) AS 月,[姓名],d.[零件名称], b.[工序],sum(数量) as 数量, sum(数量*单价) as 金额 from (select [批次], b.[工序], [数量], c.[单价] from {计件明细} as b inner join {工序表} as c on b.[工序码] = c.[工序码]) as a inner join {计件} as d ON a.[批次] = d.[批次] group by Month(完工日期) , [姓名],d.[零件名称], b.[工序]

 

结果仍提示:至少一个参数没有指定.

如果你Access 保存的视图名称为 a1

那么你在FOXTABLE中 使用FILL语句加载时候,SQL 为

select * from a1 where 条件就可以了


完全不需要再转换成狐表语句。是在想转,你直接copy也就可以了不需要转换


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/23 13:45:00 [显示全部帖子]

以下是引用石四在2014-2-23 12:11:00的发言:

SQL:

select * from {计件工资}

测试通过,OK.

 

学习狐表,还得学SQL,ACCESS,没完没了,无穷无尽,...............

买了开发版,等于上了贼船,踏上不归路...........

图片点击可在新窗口打开查看


学习数据库不学习SQL,等于没入门,后面无穷无尽的问题要用代码解决,更加困难。

SQL语句写个几十遍自然就会明白了,不要太着急


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


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/2/25 11:24:00 [显示全部帖子]

以下是引用石四在2014-2-25 11:15:00的发言:

窗口上设置一按钮用于查询,按钮事件Click代码:

 

Dim cmd As New SQLCommand
cmd.C
cmd.CommandText = "SELECT * From {计件工资}"


结果没有响应!

 

弱弱地问:正确的代码怎么写?


你只是设置了参数,要执行啊,有三个方法


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


 回到顶部