Hello all readers,

following a complete example for reproduce this behaviour (SQLite 3.7.3):


CREATE TABLE IF NOT EXISTS OrderTest (ID AUTOINC, Price FLOAT);

REPLACE INTO OrderTest VALUES (1, 50);
REPLACE INTO OrderTest VALUES (1, 50);
REPLACE INTO OrderTest VALUES (2, 75);
REPLACE INTO OrderTest VALUES (3, 0);
REPLACE INTO OrderTest VALUES (4, 25);
REPLACE INTO OrderTest VALUES (5, 100);
REPLACE INTO OrderTest VALUES (6, 250);
REPLACE INTO OrderTest VALUES (7, 1000);
REPLACE INTO OrderTest VALUES (8, 10000);

--Working:

SELECT * FROM OrderTest WHERE Price < 200 
UNION
SELECT * FROM OrderTest WHERE Price > 500 
ORDER BY Price;

--Don't working: (Error: 1st ORDER BY term does not match any column in the
result set.)

SELECT * FROM OrderTest WHERE Price < 200 
UNION
SELECT * FROM OrderTest WHERE Price > 500 
ORDER BY Price IS 0, Price;


Is this a bug? In MySQL it works as expected. Is there a workaround?

Thanks in advance,

Waldemar Derr

_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to