Downsides to SELECT *
You often hear SQL experts say that using SELECT * in a statement is an anti-pattern or bad practice, and I agree. The two biggest issues people encounter include:
SELECT * can return a lot of data to the client, which is wasteful if you don’t need it. Imagine a table with over 30 columns, and you only need 2; that’s a lot of unnecessary overhead. What if you have multiple NVARCHAR(MAX) columns?
If you consistently use SELECT *, you are probably not leveraging performance-enhancing indexes, because you're accessing the heap or the clustered index directly.
/* Instead of */
SELECT *
FROM dbo.Table1
/* Try */
SELECT Column1,
Column2
FROM dbo.Table1;