Il seguente post aveva validi motivi per evitare generalmente l'uso di select *
in SQL.Best Practice: selezionare * su CTE
Why is SELECT * considered harmful?
Nella discussione è stato esempi di quando era o non era accettabile per usare select *
Tuttavia non mi sembra discussione sul espressione di tabella comune (CTE). Ci sono degli svantaggi nell'uso di select *
in CTE?
Esempio:
WITH CTE1 AS
(
SELECT Doc, TotalDue
FROM ARInvoices
WHERE CustomerName = 'ABC'
UNION
SELECT Doc, - TotalDue
FROM ARInvoiceMemos
WHERE CustomerName = 'ABC'
)
select * from CTE1
UNION
Select 'Total' as Doc, sum(TotalDue)
FROM CTE1
Credo che lo stesso caso valga per le CTE per gli stessi motivi indicati nella domanda che hai collegato. Non riesco a trovare alcun documento per dimostrarlo. –
Qui non c'è alcun inconveniente. Lo stesso vale per le tabelle derivate 'select * from (select a, b, c from some_table) as t' –