我不确定这是甚至可能的,但我知道如果是这样,stackoverflow社区是我可以找到答案的地方。我基本上试图预先处理一些数据,以便加快我的应用程序。这里是什么,我试图做一个例子:在MySQL中使用动态SQL(具有查询结果的子查询)
SELECT id
FROM data AS data1
WHERE rangeVal < (SELECT rangeVal FROM data WHERE id = data1.id - 1)
AND actiondate >= '1980-05-18'
AND actiondate <= '2012-05-18'
ORDER BY actiondate DESC
本质上讲,我试图让我的数据的ID只有在其rangeVal小于rangeVal从第二天开始。
任何帮助或点在正确的方向将不胜感激!
您的查询似乎是正确的;你可以使用'BETWEEN'1980-05-18'和'2012-05-18',但引擎应该足够好为你做。你测试了你的查询吗?怎么了? – Marco
你用这个查询得到的结果是什么(这看起来似乎是正确的)? –
只是为了阐明为什么我删除了Dynamic-SQL标签......动态SQL是动态构建SQL命令的地方。如引入新的JOIN或WHERE子句。该问题中的示例查询仅使用相关的子查询*(子查询的结果与外部查询相关)*。 – MatBailie