首页 >数据库 >mysql教程 >什么时候在 SQL 中使用'SELECT *”实际上是合理的?

什么时候在 SQL 中使用'SELECT *”实际上是合理的?

Susan Sarandon
Susan Sarandon原创
2024-12-24 07:20:15668浏览

When Is Using

“SELECT *”的优点

虽然“SELECT *”在生产代码中经常不被鼓励,但确实在某些情况下它是合理的。

审核触发器

审核触发器可以从使用“SELECT ”中受益。当向基表添加其他列时,使用“SELECT ”可确保引发错误,从而防止审核触发器和表结构被忽略。

派生表

“SELECT ”在派生表和列表表达式中很有用。通过使用“”,所有列都被包含在内,确保如果将新列添加到基表中,它们将自动包含在派生表或 CTE 中。

SQL Server 优化

在 SQL Server 中,优化器会识别出查询中只需要特定列,即使在表表达式中使用“SELECT *”也是如此。因此,检索和丢弃不必要的列不会产生额外的开销。

视图(谨慎)

原则上,“SELECT ”可以接受视图,因为它是来自应该避免的视图的最终 SELECT。但是,建议在 SQL Server 中小心,因为当基础表发生更改时,视图的列元数据不会自动更新。使用“”可能会导致不正确的结果,除非使用 sp_refreshview 刷新视图。

以上是什么时候在 SQL 中使用'SELECT *”实际上是合理的?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn