Sql 如何从查询ColdFusion 11中删除特定列

Sql 如何从查询ColdFusion 11中删除特定列,sql,coldfusion,coldfusion-11,Sql,Coldfusion,Coldfusion 11,我想从查询中删除特定列。我已经尝试过使用queryDeleteColumn,但收到错误消息: 变量QUERYDELETECOLUMN未定义 以下是ColdFusion 11.0.18的代码片段: <cfquery name="qData" datasource="datasource"> SELECT * FROM table </cfquery> <cfset qData = QueryDeleteColumn(qD

我想从查询中删除特定列。我已经尝试过使用queryDeleteColumn,但收到错误消息:

变量QUERYDELETECOLUMN未定义

以下是ColdFusion 11.0.18的代码片段:

<cfquery name="qData" datasource="datasource">
    SELECT
        *
    FROM
        table
</cfquery>
<cfset qData = QueryDeleteColumn(qData,"columnName")
函数queryDeleteColumn是在ColdFusion 2018中添加的。所以它在ColdFusion 11中不可用

您可以对初始结果执行查询,如下所示

<cfquery name="qData" datasource="datasource">
    SELECT
        *
    FROM
        table
</cfquery>

<cfif listFindNoCase(test.columnList, 'columnName')>
    <cfquery name="qData" dbtype="query">
        SELECT
          #listDeleteAt(test.columnList, listFindNoCase(test.columnList, 'columnName'))#
        FROM qData
    </cfquery>
</cfif>

函数queryDeleteColumn是在ColdFusion 2018中添加的。所以它在ColdFusion 11中不可用。将*替换为您想要使用的列。您想做什么?为什么要删除列?您的意思是想从结果中排除一列吗?如果是这样,就不要质疑它。无论如何,使用SELECT*通常不是一个好的做法。像丹说的那样,只查询你真正想要的列。我还要补充一点,即CF11在2019年4月结束了核心支持,因此没有更多的安全补丁。这不是一件好事,而且,根据应用程序处理的数据类型,这可能会成为一个相当关键的问题。选择*的原因是因为该表是可变的。所以我不知道所有的专栏。在我的例子中,我只知道每个表中有一个特定的列。但是我不想在我的查询中出现这一列。@DropMania虽然这可能有效,但我仍然认为没有必要这样做。对于一个只需查询所需的列而不是*就可以简单得多的操作来说,这最终将是一个巨大的开销。