使用VBA(excel)中的MYSQL查询连接表

时间:2012-10-29 16:44:32

标签: sql vba join excel-vba excel

我是Visual Basic的新手。我正在使用MYSQL数据库,我想在Excel中使用VB,因此我可以使用更复杂的查询。出于某种原因,当我尝试在vb中连接表时,我收到一条错误消息。有人可以告诉我我的代码有什么问题。

strSql = "SELECT COUNT(*)FROM `order`" & _
                 "JOIN user ON user.id = order.destination_id" & _
                 "WHERE payment_status = 'pay';"

    rs.Open strSql, oConn, adOpenDynamic, adLockPessimistic

    res = rs.GetRows

    rs.Close

    Range("A1", "A6") = res(0, 0)

1 个答案:

答案 0 :(得分:2)

您当前的查询将生成此字符串

SELECT COUNT(*)FROM `order`JOIN user ON user.id = order.destination_idWHERE payment_status = 'pay';
               ^           ^                                          ^

在连接期间缺少空间,为了纠正这个问题,只需在双引号之前添加空格。

strSql = "SELECT COUNT(*) FROM `order`   " & _        
         "JOIN user ON user.id = order.destination_id   " & _
         "WHERE payment_status = 'pay';"