Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

下面的sql是否有问题

白云之巅  发表于:2013-09-07 13:47:15  
复制

我把下面的sql放到VBA中,显示有问题,请大侠们帮我看看,不胜感激:

 

Private Sub Command0_Click()

Dim sqla As String

sqla = "SELECT * INTO A1_2_5_满足退港报关单_temp4" _
        & "FROM [SELECT F.备案序号, F.退港单价, F.DDate, F.Qty1, F.EntryId, Max(F.GNo) AS GNo之最大值" _
        & "FROM (SELECT D.备案序号, D.退港单价, D.DDate, D.Qty1, Max(D.EntryId) AS EntryId之最大值" _
        & "FROM (SELECT B.备案序号, B.退港单价, B.DDate, Max(B.Qty1) AS Qty1之最大值" _
        & "FROM (SELECT A1_2_5_满足退港报关单_temp.备案序号, A1_2_5_满足退港报关单_temp.退港单价, Max(A1_2_5_满足退港报关单_temp.DDate) AS DDate之最大值" _
        & "FROM A1_2_5_满足退港报关单_temp" _
        & "GROUP BY A1_2_5_满足退港报关单_temp.备案序号, A1_2_5_满足退港报关单_temp.退港单价, A1_2_5_满足退港报关单_temp.note1" _
        & "HAVING (((A1_2_5_满足退港报关单_temp.note1) Is Null))) A, A1_2_5_满足退港报关单_temp AS B" _
        & "GROUP BY B.备案序号, B.退港单价, B.DDate, A.备案序号, A.退港单价, A.DDate之最大值" _
        & "HAVING (((b.备案序号) = [a].[备案序号]) And ((b.退港单价) = [a].[退港单价]) And ((b.DDate) = [a].[ddate之最大值]))) C, A1_2_5_满足退港报关单_temp AS D" _
        & "GROUP BY D.备案序号, D.退港单价, D.DDate, D.Qty1, C.备案序号, C.退港单价, C.DDate, C.Qty1之最大值" _
        & "HAVING (((D.备案序号) = [c].[备案序号]) And ((D.退港单价) = [c].[退港单价]) And ((D.DDate) = [c].[DDate]) And ((D.Qty1) = [c].[Qty1之最大值]))) E, A1_2_5_满足退港报关单_temp AS F" _
        & "GROUP BY F.备案序号, F.退港单价, F.DDate, F.Qty1, F.EntryId, E.备案序号, E.退港单价, E.DDate, E.Qty1, E.EntryId之最大值" _
        & "HAVING (((f.备案序号) = [e].[备案序号]) And ((f.退港单价) = [e].[退港单价]) And ((f.DDate) = [e].[DDate]) And ((f.Qty1) = [e].[Qty1]) And ((f.EntryId) = [e].[EntryId之最大值]))]. AS G;"

DoCmd.RunSQL sqla

End Sub

 

Top
煮江品茶 发表于:2013-09-07 16:53:06
太复杂的SQL语句了,你可以将From子句部分建立一个查询,看看这个查询是否能正确显示数据,然后用这个查询来做生成查询的SQL语句。

白云之巅 发表于:2013-09-09 17:22:58
在查询中可以,但是放到VBA中就出现问题

cspa 发表于:2013-09-09 20:32:44

如果在查询中没问题那语法就没问题,那问题可能就出在语句格式上。连字符连接的语句之间少了空格,在每行的        & "之后加上空格后再写语句。如

        & " FROM [SELECT F.备案序号, F.退港单价, F.DDate, F.Qty1, F.EntryId, Max(F.GNo) AS GNo之最大值" _

注意在"和from之间加了空格。



白云之巅 发表于:2013-09-10 15:10:43

就是这个问题,非常感谢!!!!!



总记录:4篇  页次:1/1 9 1 :