使用Excel 2010中的DateTime参数运行SQL查询

时间:2013-02-22 20:42:55

标签: sql oracle excel

我正在使用ODBC连接Excel 2010,我知道我们可以通过添加[Blah Blah]在MS Query中设置参数,并在实际查询中添加?

但我不知道如何使用to_date为datatime做一个参数。

这是我的where子句。

where ("R"."TIME_STAMP">=TO_DATE ('03-02-2013 00:00:00', 'DD-MM-YYYY HH24:MI:SS') 
   AND "R"."TIME_STAMP"<=TO_DATE ('09-02-2013 23:59:59', 'DD-MM-YYYY HH24:MI:SS')) 

我不确定我需要哪些信息,但这里是time_stamp字段的数据类型。

SQL> desc tablet
 Name                                      Null?    Type
 ----------------------------------------- -------- -----------------------
 TIME_STAMP                                         DATE

2 个答案:

答案 0 :(得分:2)

我认为您只是准备SQL查询并将其发送给Oracle。我以为你在调用Oracle存储过程。

您的where子句应如下所示:

where ("R"."TIME_STAMP" between ? and ?)

并且在Excel中,您需要一个单元格来输入日期或日期/时间(假设它是A1),然后是另一个具有公式=TEXT(A1, "MM-DD-yyyy hh:mm:ss")的单元格。这是要在MS Query中链接的单元格。重复第二个参数。

答案 1 :(得分:0)

使用Excel中的文本单元格将日期存储为dd Mmm YYYY(例如2014年2月2日)。

使用MSQuery中的参数选项(?)来引用文本单元格。

where ("R"."TIME_STAMP" between ? and ?)