(Select id,c1,c2,c3 from table where c1=x1 and c2=x2 ) union <<---block 1 (Select id,c1,c2,c3 from table where c1=x1 and c2=x2 ) union <<---block 2 ... (Select id,c1,c2,c3 from table where c1=x1 and c2=x2 ) union <<---block mth que devuelve result
id|c1|c2|c3 ------------ 1 |..|..|.. 2 |..|..|.. 3 |..|..|.. .. .. .. .. .. .. .. .. nth.. .. ..Quiero una tabla que agregue un no que muestre el resultado obtenido de qué bloque de unión
id|c1|c2|c3|blk --------------- 1 |..|..|..|1 2 |..|..|..|1 3 |..|..|..|2 .. .. .. ..|3 .. .. .. ..|3 nth.. .. ..|3Agregue 1 columna más a cada consulta con el número blk:
(Select id,c1,c2,c3, 1 blk from table where c1=x1 and c2=x2 ) (Select id,c1,c2,c3, 2 from table where c1=x1 and c2=x2 ) ... (Select id,c1,c2,c3, <n> from table where c1=x1 and c2=x2 )Simplemente agregue una constante a la cláusula de selección:
SELECT id, c1, c2, c3, 1 AS blk FROM table WHERE c1 = x1 AND c2 = x2 UNION ALL -- block 1 SELECT id, c1, c2, c3, 2 FROM table WHERE c1 = x1 AND c2 = x2 UNION ALL -- block 2 ... SELECT id, c1, c2, c3, m FROM table WHERE c1 = x1 AND c2 = x2 -- block m