Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: Difficult Query: is this possible in SQL?
DROP TABLE Foobar;
CREATE TABLE Foobar
(level INTEGER NOT NULL PRIMARY KEY,
color VARCHAR(10),
length INTEGER,
width INTEGER,
hgt INTEGER);
INSERT INTO Foobar VALUES (1, 'RED', 8, 10, 12); INSERT INTO Foobar VALUES (2, NULL, NULL, NULL, 20); INSERT INTO Foobar VALUES (3, NULL, 9, 82, 25); INSERT INTO Foobar VALUES (4, 'BLUE', NULL, 67, NULL); INSERT INTO Foobar VALUES (5, 'GRAY', NULL, NULL, NULL);
SELECT
COALESCE (F5.color, F4.color, F3.color, F2.color, F1.color) AS color, COALESCE (F5.length, F4.length, F3.length, F2.length, F1.length) AS length, COALESCE (F5.width, F4.width, F3.width, F2.width, F1.width) AS width, COALESCE (F5.hgt, F4.hgt, F3.hgt, F2.hgt, F1.hgt) AS hgt FROM Foobar AS F1, Foobar AS F2, Foobar AS F3, Foobar AS F4, Foobar AS F5 WHERE F1.level = 1 AND F2.level = 2 AND F3.level = 3
![]() |
![]() |