Interbase doesn't support ORDER BY
clause in the SELECT
statement of the view. See the documentation, page 8-4 in the Data Definition Guide (youll find the page when selecting from the bookmarks "Working with views" -> "Creating views" -> "Using the SELECT Statement").
Using Order by with create view or insert in Interbase
Question
I'm having problems sorting data in interbase, my timestamp is in seperate columns of year,month,date, etc so I need to order in that order (though in this case it wouldn't work even to order by a single field). For some reason the ORDER command throws a 'token unknown' error when used in combination with CREATE VIEW or INSERT INTO. Am I making a dumb syntax error here, or is there a more fundamental issue with the way I'm trying to ude the ORDER command?
CREATE VIEW HOURLY_AVES_SORT (MEASYEAR,MEASMONTH,MEASDAY,MEASHOUR,GH,GK,GDH,TA) as
SELECT
HOURLY_AVES_ALL.MEASYEAR, HOURLY_AVES_ALL.MEASMONTH, HOURLY_AVES_ALL.MEASDAY,
HOURLY_AVES_ALL.MEASHOUR, /*HOURLY_AVES.MEASMIN, HOURLY_AVES_ALL.MEASSECOND, */
HOURLY_AVES_ALL.GH, HOURLY_AVES_ALL.GK, HOURLY_AVES_ALL.GDH, HOURLY_AVES_ALL.TA
FROM HOURLY_AVES
ORDER BY
HOURLY_AVES_ALL.MEASYEAR, HOURLY_AVES_ALL.MEASMONTH, HOURLY_AVES_ALL.MEASDAY,
HOURLY_AVES_ALL.MEASHOUR
trying to copy the data into another table rather than a view, throws the same token unknown error, ie:
INSERT INTO HOURLY_AVES_SORTED
(MEASYEAR,MEASMONTH,MEASDAY,MEASHOUR,GH,GK,GDH,TA)
SELECT
HOURLY_AVES_ALL.MEASYEAR, HOURLY_AVES_ALL.MEASMONTH, HOURLY_AVES_ALL.MEASDAY,
HOURLY_AVES_ALL.MEASHOUR, /*HOURLY_AVES.MEASMIN, HOURLY_AVES_ALL.MEASSECOND, */
HOURLY_AVES_ALL.GH, HOURLY_AVES_ALL.GK, HOURLY_AVES_ALL.GDH, HOURLY_AVES_ALL.TA
FROM HOURLY_AVES
ORDER BY
(MEASYEAR, MEASMONTH, MEASDAY,MEASHOUR, GH, GK,GH, TA)
any tips very welcome, Brian
Solution
OTHER TIPS
Try to use column numbers:
CREATE VIEW HOURLY_AVES_SORT (MEASYEAR,MEASMONTH,MEASDAY,MEASHOUR,GH,GK,GDH,TA) as
SELECT
h.MEASYEAR, h.MEASMONTH, h.MEASDAY, h.MEASHOUR,
h.GH, h.GK, h.GDH, h.TA
FROM
HOURLY_AVES h
ORDER BY
1, 2, 3, 4
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow