I think this can work
SELECT STRFTIME('%Y-%m-%d %H %M', date) AS Date,
(SELECT open from eurusd e2
where STRFTIME(e2.date) >= CAST(STRFTIME('%s', e1.date) /
(5 * 60) AS INTEGER) * 5 * 60
order by e2.date asc limit 1) AS Open,
MAX(high) as High,
MIN(low) as Low,
(SELECT close from eurusd e3
where STRFTIME(e3.date) < (CAST(STRFTIME('%s', e1.date) /
(5 * 60) AS INTEGER) + 1) * 5 * 60
order by e3.date desc limit 1) AS Close
FROM eurusd e1
GROUP BY CAST(STRFTIME('%s', e1.date) / (5 * 60) AS INTEGER)
On 2011-12-12 15:45:41 +0100, Rafael Garcia Leiva wrote:
> El 24/11/2011 19:18, Rafael Garcia Leiva escribió:
>
> Dear all,
>
> I'm still working on this problem :-(
>
> Now I need the Open and the Close of the 5 minutes interval, where
> Open is the Open of the first minute of the interval, and Close is
> the Close of the last minute of the interval. I know how to get that
> information with individual queries, for example:
>
> SELECT open, date FROM eurusd WHERE date IN
> (select min(date) from eurusd group by STRFTIME("%Y-%m-%d", date));
>
> But it would be very nice (and perhaps more computationally
> efficient?) to get all the information, that is Open, High, Low and
> Close in just one single query. I have tried something like:
>
> SELECT STRFTIME('%Y-%m-%d %H %M', date) AS Date,
> (SELECT open from eurusd e2 where e2.date = MIN(e1.date)) AS Open,
> MAX(high) as High,
> MIN(low) as Low,
> (SELECT close from eurusd e3 where e3.date = MAX(e1.date)) AS Close
> FROM eurusd e1
> GROUP BY CAST(STRFTIME('%s', e1.date) / (5 * 60) AS INTEGER)
>
> but I have got an error of "misuse of aggregate function MIN()".
>
> Any help would be very welcome. Also I would like to apologize if
> this question is not relevant to the sqlite mailing list.
>
> Best regards
>
> Rafael
>
>
>
>
> _______________________________________________
> sqlite-users mailing list
> [email protected]
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users