仅使用Where语句获取唯一条目?

时间:2018-09-04 12:08:24

标签: sql excel-vba

我进行了以下设置:作为后端的Oracle数据库,由我们的IT数据库部门和我的Excel-VBA前端提供的接口。

该接口提供了多种功能,可以插入,更新和读取数据。 “ DB_connection.read_test”函数接受输入:

  • TestID(0 = ALL)

  • SQL Where语句

  • 将在其中存储数据的表名

  • 将数据库的标头设置为boolean true = set,false =保留原样

该功能显示了后端人员为我准备的视图。现在,我想比较两列是否不相等的“ PRODID”和“ ArticleID”,并获得“ PRODID”和“ ArticleID”的所有唯一对。这里的挑战是我只能写一个where语句。

Sub query_ProdID_uneq_ArticleIDlocal()
Dim SQL_Where As String

SQL_Where = "PRODID <> ARTICLEID"
Call DB_connection.read_test(0, SQL_Where, "Pruefungen_Tab", True)

End Sub

上面的代码可以工作,但可以获取PRODID <> ARTICLEID处的所有数据。因此它们不是唯一。我可以在VBA-Excel中工作,并将对减少为不同的对。

但是有没有办法通过正确的WHERE语句来实现这一目标?

SQL_Where = "PRODID <> ARTICLEID and Unique(ArticleID)"

还是类似的东西?

示例数据:

Example Data from the query above. As you can see ArticleID and ProdID are not equal.

0 个答案:

没有答案