避免在 SQL SELECT 语句中手动列出列
标准 SQL SELECT * FROM table
语句检索所有列。 然而,省略特定列而不手动列出其余列可能具有挑战性。 本文提出了一种从 SELECT
查询中有效排除列的解决方案。
问题出现了:如何从 columnA
查询中排除列 (SELECT
),而不显式命名其他所有列? 直接使用 SELECT * [except columnA] FROM tableA
不是有效的 SQL 语法。
有效的方法
这里有一个有效实现此目的的方法:
SELECT ... INTO
创建一个包含源表中所有列的临时表。<code class="language-sql">SELECT * INTO #TempTable FROM tableA;</code>
ALTER TABLE ... DROP COLUMN
从临时表中删除目标列。<code class="language-sql">ALTER TABLE #TempTable DROP COLUMN columnA;</code>
<code class="language-sql">SELECT * FROM #TempTable;</code>
<code class="language-sql">DROP TABLE #TempTable;</code>
此技术提供了一种排除列的简化方法,在处理包含大量列的表时特别有用。它避免了手动指定要包含的每一列的容易出错且耗时的任务。
以上是如何在不列出所有其他列的情况下从 SQL 中的 SELECT 查询中有效地排除列?的详细内容。更多信息请关注PHP中文网其他相关文章!