Sql 如何使用oracle 11g中的vb.net从多个表填充.net数据集

Sql 如何使用oracle 11g中的vb.net从多个表填充.net数据集,sql,vb.net,oracle11g,Sql,Vb.net,Oracle11g,我有一个Oracle11g数据库,它包含13个左右的表,这些表的列数各不相同 我知道如何一次从一个表中检索信息,但我需要从多个表中检索不同数量的列并填充数据集 我不熟悉SQL和数据库编程,所以非常感谢您的详细回复 每个表都包含一个时间列 例如: select col2, col4, col5,col10 from table1 where TimeCol >= IntialTime and TimeCol <= FinalTime order by TimeCol desc;

我有一个Oracle11g数据库,它包含13个左右的表,这些表的列数各不相同

我知道如何一次从一个表中检索信息,但我需要从多个表中检索不同数量的列并填充数据集

我不熟悉SQL和数据库编程,所以非常感谢您的详细回复

每个表都包含一个时间列

例如:

select col2, col4, col5,col10 
from table1 
where TimeCol >= IntialTime and TimeCol <= FinalTime 
order by TimeCol desc;
选择col2、col4、col5、col10
来自表1

其中TimeCol>=IntialTime和TimeCol您可以嵌套查询

SELECT cols FROM table....
SELECT cols FROM table2....
SELECT cols FROM table3....
数据集
将保存一组
数据表
,因此
数据表[0]
将保存第一个查询等

DataSet ds = new DataSet();
//populate dataset...
DataTable firstQuery = ds.Tables[0];

OracleCommand oraCommand = new OracleCommand("SELECT cols FROM table....; 
                                     SELECT cols FROM table2....", dbconnection);
使用,您可以轻松地测试您的语句。这是一个很棒的工具。提供您需要的一切。这可能是你的一个开始

你的问题有点不清楚。
如果您想创建一个文档,那么Oracle还提供了文档。hth对于您的开始

加入
将解决问题。我希望

SELECT  col2, col4, col5,col10 
FROM table1 
INNER JOIN table2 on table2.time column= table1.time column
WHERE TimeCol >= IntialTime and TimeCol <= FinalTime 
选择col2、col4、col5、col10
来自表1
表2.time列上的内部联接表2=表1.time列

如果TimeCol>=IntialTime且TimeCol是SQL的新成员,那么如何嵌套查询?这是内联SQL还是使用存储过程?内联。此时,使用存储过程将有点让我不知所措。您是否只需要
SELECT*FROM。。。;从…中选择*ETC我是否可以将每个select语句添加到OracleCommand.Parameters.add方法中?然后创建一个OracleDataAdapter、DataSet并使用fill方法填充数据集?这样,上面的内容将连接表1和表2,并且行将同步。它是否也需要表2中的col2,4,5,10?要获得3个或更多的表,是否只需添加额外的“内部联接”?如果我需要每个表中的不同列怎么办?我试图运行脚本,用我所拥有的替换列和表名。我得到以下错误:SQL错误:ORA-00918:列定义不明确00918。00000—“定义不明确的列”以在“选择只需添加
选择表1.colname,表2.colname”中获取更多表,其中表1.colname=table2.colname
我要查找的是一个允许我检索多个(不是全部,也不是每次都相同)的查询基于时间列的两个或多个表中的列。谢谢你的回复。顺便说一句,我一直在使用SQLDeveloper查看我的表并执行单个查询。到目前为止,我一直在做的是执行单个查询,然后将其保存到CSV文件,然后将所有结果与Excel合并。@user3083002 aha。。也许您可以选择使用编程语言(在您的例子中是vb.net)来构建sql查询,这些查询取决于给定的日期(“基于时间范围”)。