Sql 涉及成员时的简单select语句

Sql 涉及成员时的简单select语句,sql,vb.net,vba,ibm-midrange,Sql,Vb.net,Vba,Ibm Midrange,我相信这是一个简单的问题,但我一直被难住了,所以我想我会问,希望能得到一个快速的答复。使用OLEDB连接,我想执行select语句,但对于我要从中选择的表,表成员也必须在那里,这似乎会弄乱我的结果 通常情况下,我会写信来获取专栏“col1”: 对于我需要从中获取信息的表,该表有一个“子成员”。根据我收集的信息,语法如下: SELECT lib1.table(submember).col1 FROM lib1.table(submember) 问题是结果给出了表中的每一列,而不仅仅是我的“col

我相信这是一个简单的问题,但我一直被难住了,所以我想我会问,希望能得到一个快速的答复。使用OLEDB连接,我想执行select语句,但对于我要从中选择的表,表成员也必须在那里,这似乎会弄乱我的结果

通常情况下,我会写信来获取专栏“col1”:

对于我需要从中获取信息的表,该表有一个“子成员”。根据我收集的信息,语法如下:

SELECT lib1.table(submember).col1 FROM lib1.table(submember)

问题是结果给出了表中的每一列,而不仅仅是我的“col1”数据。我希望这是很好地解释了我所寻找的。提前感谢所有提供帮助的人。

为library.table(成员)创建alias library.aliasname


然后在别名上进行选择,您应该能够在
QTEMP
中创建一个:

CREATE ALIAS QTEMP.TABLE FOR LIB1.TABLE (SUBMEMBER)
然后通过临时创建的别名进行查询:

SELECT COL1 FROM QTEMP.TABLE

连接结束时,它将自动删除。

为什么要使用vb.net和vba的标记?这是两种完全不同的语言/技术…OLEDB连接就是在这两种语言/技术之间建立的。您有一个VB.NET应用程序和一个VBA应用程序,它们都使用相同的select语句?老实说,我从未见过这种子成员语法。您使用的是什么DBMS?请尝试使用括号符号,而不是点和括号。所以
lib1[table][submember][col1]
我在服务器上没有创建表的权限。还有其他想法吗?据我所知,这是唯一的选择。我不知道6.1或7.1能提供什么。这实际上是我最终做的(或多或少)。感谢您的帮助。同意,在
QTEMP
中创建这些类型的临时
alias
es(相当于每个作业的完整授权临时目录)。如果你的连接工作没有这个权限,你无论如何都会有各种各样的麻烦。。。
SELECT COL1 FROM QTEMP.TABLE