如何从Mathematica中的SQLDateTime对象中提取Date

时间:2010-03-18 15:52:56

标签: wolfram-mathematica sqldatetime

我正在尝试使用DateListPlot绘制时间序列图。我想提供一个从SQL数据库中获取的时间序列。当我检索时间序列时,列表由SQLDateTime不理解的DateListPlot个条目组成。

In[24]:= t=SQLExecute[conn, "select timestamp,value from timeseries order by timestamp asc"]

Out[24]={{SQLDateTime[{2010,1,1}],12.3},{SQLDateTime[{2010,1,2}],12.51}}

不起作用: In[25]:= DateListPlot[t]

DateListPlot需要Date元组,并且不理解SQLDateTime。我该怎么办?

1 个答案:

答案 0 :(得分:7)

答案:

In[1]:= SQLDateTime[{2001, 5, 7}][[1]]
Out[1]:= {2001,5,7}

Mathematica在内部非常类似地思考所有事情。您看到的{1, 2, 3}实际上是List[1,2,3]。 Part函数(由[[...]]表示)在任何函数上都可以正常工作,而不仅仅是List

在您的案例中应用此方法的快捷方式:

{#[[1,1]],#[[2]]}& /@ SQLExecute[...]