table 和要存储在连接 sql 查询的数据集中的列名称
table and column name to store in dataset from joined sql query
我有 3 个 tables,在我无法修改的访问数据库中,要像这样使用左连接进行查询
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
ORDER BY tbl_A.mID
现在我想存储列名称,包括 table 左侧连接中相应 table 的名称
Dim i as integer = 0
For Each column As DataColumn In ds.Tables(0).Columns
Dim lst As New ListBox
lst.name = "lst_" & i
lst.add(new ColumnAndListBox(ds.Tables(0).TableName & "." & column.ColumnName, lst.name)
i += 1
next
该列表中的结果应如下所示
tbl_A.mID lst
tbl_A.data lst
tbl_B.data lst
tbl_C.data lst
我需要完整的名称(table 和列)才能动态创建 where 子句并查询例如 mID,因为这样的查询不起作用
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
WHERE mID = 1
ORDER BY tbl_A.mID
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
WHERE mID = 1
ORDER BY tbl_A.mID
行不通,但我认为这会:
SELECT * from
(
SELECT
tbl_A.mID,
tbl_A.data adata,
tbl_B.data bdata,
tbl_C.data cdata
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
ORDER BY tbl_A.mID
) WHERE mID = 1
我有 3 个 tables,在我无法修改的访问数据库中,要像这样使用左连接进行查询
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
ORDER BY tbl_A.mID
现在我想存储列名称,包括 table 左侧连接中相应 table 的名称
Dim i as integer = 0
For Each column As DataColumn In ds.Tables(0).Columns
Dim lst As New ListBox
lst.name = "lst_" & i
lst.add(new ColumnAndListBox(ds.Tables(0).TableName & "." & column.ColumnName, lst.name)
i += 1
next
该列表中的结果应如下所示
tbl_A.mID lst
tbl_A.data lst
tbl_B.data lst
tbl_C.data lst
我需要完整的名称(table 和列)才能动态创建 where 子句并查询例如 mID,因为这样的查询不起作用
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
WHERE mID = 1
ORDER BY tbl_A.mID
SELECT
tbl_A.mID,
tbl_A.data,
tbl_B.data,
tbl_C.data
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
WHERE mID = 1
ORDER BY tbl_A.mID
行不通,但我认为这会:
SELECT * from
(
SELECT
tbl_A.mID,
tbl_A.data adata,
tbl_B.data bdata,
tbl_C.data cdata
FROM ((tbl_A
LEFT JOIN tbl_B ON tbl_A.mID = tbl_B.mID)
LEFT JOIN tbl_C ON tbl_A.mID = tbl_C.mID)
ORDER BY tbl_A.mID
) WHERE mID = 1