sql
  • sql-server
  • sql-server-2000
  • 2011-11-29 35 views 0 likes 
    0

    我想使用and条件进行选择查询。如何使用和选择查询

    dept, divi, comp as string 
    
    Deparment = dept 
    Division = divi 
    company = comp 
    

    尝试这样的查询:

    Select * 
    from table 
    where 
        department = '" & dept & "' 
        and division = '" & divi & "' 
        and Company = '" & comp & "' 
    

    上面的查询工作,如果deptdivicomp值可用。

    条件

    如果用户选择部门而已,它应该显示所选部门的所有值仅
    如果用户选择部门和公司表示,它应该显示选定的公司和选定的部门为这家公司
    如果用户选择部门,部门和公司手段,则应显示所选公司,所选公司的分部,所选部门的分部。

    如何使此选择查询?

    +0

    你这是什么意思可用? – gprathour

    +0

    @Gopal从我的理解你可以尝试使用选择案例当(部门不是空和comp是空的,comp是空的)然后dept值当(divi不是空和dept为空和comp是空的)然后divi-值...当其他条件....从表结束。 –

    +0

    @Sadiur,我修改我的问题。 – Gopal

    回答

    0

    我认为这可以帮助你:

    Select * 
    from table 
    where 
        (@dept = NULL OR department = @dept) 
        and (@div = NULL OR division = @div) 
        and (@comp = NULL OR Company = @comp) 
    
    +0

    我喜欢写这个部门= IsNull(@部门,部门),你可能会遇到一些索引问题虽然后来 –

    相关问题