Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- WITH t1 AS
- (
- SELECT
- rownum AS rownumm,
- ROW_NUMBER() OVER (partition BY c.maker ORDER BY c.TYPE) rang,
- maker,
- TYPE,
- CASE
- WHEN TYPE LIKE 'PC' THEN 1
- WHEN TYPE LIKE 'Laptop' THEN 2
- WHEN TYPE LIKE 'Printer' THEN 3 ELSE 0
- END AS type_n
- FROM
- (
- SELECT DISTINCT
- maker, TYPE
- FROM Product
- ORDER BY maker
- ) c
- )
- SELECT
- f.rownumm AS num,
- CASE
- WHEN f.rang = 1 THEN f.maker ELSE ''
- END AS maker,
- s.TYPE
- FROM
- t1 f
- LEFT JOIN
- (
- SELECT
- rang,
- maker,
- TYPE,
- type_n,
- CASE WHEN type_n IN (SELECT rang FROM t1 aa WHERE aa.maker = bb.maker AND aa.TYPE_N = bb.RANG) THEN type_n ELSE rang END AS rr
- FROM t1 bb
- ) s ON f.maker = s.maker AND f.rang = s.rr
- ORDER BY rownumm
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement