代码之家  ›  专栏  ›  技术社区  ›  espresso_coffee

如果SQL Server查询中存在值,如何添加筛选器?

  •  0
  • espresso_coffee  · 技术社区  · 6 年前

    <cfif userdata.appaccess lt 8>
        AND (building_list IN (<cfqueryparam value="#userdata.appBldgList#" cfsqltype="cf_sql_char" maxlength="4" list="yes">))
    </cfif>
    

    正如你所看到的 cfif 语句,检查用户访问是否小于8,然后在查询中包含筛选器。我想知道是否有一种方法可以用SQL语言来实现这一点?如果是,这是更好还是更有效的选择/解决方案?我的项目中的编码标准不一致,代码是由许多不同的程序员编写的,他们离开了,每个新的程序员都开始了新的工作。我正在努力为这种情况找到最好和最有效的解决方案。任何建议/例子都会有帮助。谢谢您。

    1 回复  |  直到 6 年前
        1
  •  0
  •   Eccountable    6 年前

    是的,只需将SQL“或”条件与

       select...
        from...
        where 
        ...some conditions...
        and (#userdata.appaccess# >= 8 OR
        (building_list IN (<cfqueryparam value="#userdata.appBldgList#"    cfsqltype="cf_sql_char" maxlength="4" list="yes">))
        )
    

    如果你觉得这个答案可以接受,请注明。