以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]用SQL语句 合并表格  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=148584)

--  作者:5233655cs
--  发布时间:2020/4/10 15:28:00
--  [求助]用SQL语句 合并表格
老师,下午好!


我现在有2个SQL外部数据表  tb1  和 tb2   

表的结构都一样的。 状态,提案日期,提案人,提案名称


他们都来自外部数据源"ImproveSQL"


我现在想做个窗口1_table1  用来展示   tb1和tb2中  符合条件的行。 比如 状态=‘完成’  的行

如何使用SQL 直接调用后台数据,然后在窗口1_table1中展示出来?







--  作者:sloyy
--  发布时间:2020/4/10 15:37:00
--  
SQLJoinTableBuilder合并多个查询结果
--  作者:5233655cs
--  发布时间:2020/4/10 15:51:00
--  
有类似的实例吗    不太懂,,,
--  作者:有点蓝
--  发布时间:2020/4/10 15:51:00
--  
select  状态,提案日期,提案人,提案名称 from tb1 where 状态=‘完成’ union all select  状态,提案日期,提案人,提案名称 from tb2 where 状态=‘完成’
--  作者:5233655cs
--  发布时间:2020/4/10 15:57:00
--  
老师,
如果我有 10几个表,   tb1 tb2 ...tb15

难道需要十几个select  用 union合并?



能不能用类似 for .....next语句  进行简化?  

如何写代码呢?


[此贴子已经被作者于2020/4/10 15:57:44编辑过]

--  作者:有点蓝
--  发布时间:2020/4/10 16:23:00
--  
我只懂union 。不知道高版本的SqlServer有没有新的语法可以用
--  作者:5233655cs
--  发布时间:2020/4/10 16:58:00
--  

以下部分程序,


depart(0) = "Inst"

depart(1) = "HRADM"


Dim filter As String

filter = "状态 = \'等待其他部门审核\'"

Dim Sel As String

Sel=""

 

Sel= "Sel ect [序号],[班组],[状态] From {" & depart(0) & "} where " & filter & " union all " & "Sele ct [序号],[班组],[状态] From {" & depart(1) & "} where " & filter

messagebox.show(sel)

 

Tables("外部部门审批_Table1").Fill(Sel,"ImproveSQL",True)

 



老师, 我执行以后只显示第一个表的内容, 但是第二个表符合条件的内容不出现,   这个是为什么?   (实际上第二个表上 是存在符合条件的行的)


--  作者:有点蓝
--  发布时间:2020/4/10 17:11:00
--  
sql拿到数据库里执行有没有问题?
--  作者:5233655cs
--  发布时间:2020/4/10 19:55:00
--  
Dim filter As String
filter = "其它部门审批_I = 1"      这里1 代表 true    如果我这里改成 filter = "状态 = \'已完成\'"  就没问题

Dim Sel As String
Sel=""
Dim i As Integer
For i = 0 To 10
    Sel= Sel & "Sel ect [序号],[班组] From {" & depart(i) & "} where " & filter & " union all "
Next
Sel= Sel & "Sel ect [序号],[班组] From {" & depart(11) & "} where " & filter

Tables("外部部门审批_Table1").Fill(Sel,"ImproveSQL",True)

这里执行了以后 出现 “se lect 语句出现错误, 请检查语法和数据源设置。”

老师 能帮忙看下  错在哪儿吗?

--  作者:5233655cs
--  发布时间:2020/4/10 20:01:00
--  
额  找到原因了  是我数据源的问题。