SQL中常用运算符

    1. =:等于,比较是否相等及赋值
    2. !=:比较不等于
    3. >:比较大于
    4. <:比较小于
    5. >=:比较大于等于
    6. <=:比较小于等于
    7. IS NULL:比较为空
    8. IS NOT NULL:比较不为空
    9. in:比较是否在其中
    10. like:模糊查询
    11. BETWEEN...AND...:比较是否在两者之间
    12. and:逻辑与(两个条件同时成立表达式成立)
    13. or:逻辑或(两个条件有一个成立表达式成立)
    14. not:逻辑非(条件成立,表达式则不成立;条件不成立,表达式则成立)

    查询示例:

    (1)根据指定列(姓名,性别,月薪,电话)查询性别为女的员工信息,并自定义中文列名

    SELECT PeopleName 姓名,PeopleSex 性别,PeopleSalary 工资,PeoplePhone 电话 from People
    WHERE PEOPLESEX = '女'
    

    (2)查询月薪大于等于10000 的员工信息( 单条件 )

    select * from People where PeopleSalary >= 10000
    

    (3)查询月薪大于等于10000 的女员工信息(多条件)

    select * from People where PeopleSalary >= 10000 and PeopleSex = '女'
    

    (4)显示出出身年月在1980-1-1之后,而且月薪大于等于10000的女员工信息。

    select * from People where PeopleBirth >= '1980-1-1' and PeopleSalary >= 10000 and PeopleSex = '女'
    

    (5)显示出月薪大于等于15000 的员工,或者月薪大于等于8000的女员工信息。

    select * from People where PeopleSalary >= 15000 or (PeopleSalary >= 8000 and PeoPleSex = '女')
    

    (6)查询月薪在10000-20000 之间员工信息( 多条件 )

    --方案一:
    select * from People where PeopleSalary >= 10000 and PeopleSalary <= 20000
    --方案二:
    select * from People where PeopleSalary  between 10000 and 20000
    

    (7)查询出地址在北京或者上海的员工信息

    --方案一:
    select * from People where PeopleAddress = '北京' or PeopleAddress = '上海'
    --方案二:
    select * from People where PeopleAddress in('北京','上海')
    

    (8)查询所有员工信息(根据工资排序,降序排列)

    --order by: 排序  asc: 正序  desc: 倒序
    select * from People order by PeopleSalary desc
    

    (9)显示所有的员工信息,按照名字的长度进行倒序排列

    select * from People order by len(PeopleName) desc
    

    (10)查询工资最高的5个人的信息

    select top 5 * from People order by PeopleSalary desc
    

    (11)查询工资最高的10%的员工信息

    select top 10 percent * from People order by PeopleSalary desc
    

    (12)查询出地址没有填写的员工信息

    select * from People where PeopleAddress is null
    

    (13)查询出地址已经填写的员工信息

    select * from People where PeopleAddress is not null
    

    (14)查询所有的80后员工信息

    --方案一:
    select * from People where PeopleBirth >= '1980-1-1' and PeopleBirth <= '1989-12-31'
    --方案二:
    select * from People where PeopleBirth between '1980-1-1' and '1989-12-31'
    --方案三:
    select * from People where year(PeopleBirth) >= 1980 and year(PeopleBirth) <= 1989
    

    (15)查询年龄在30-40 之间,并且工资在15000-30000 之间的员工信息

    --方案一:
    select * from People where
    (year(getdate())-year(PeopleBirth) >= 30 and year(getdate())-year(PeopleBirth) <= 40) and
    (PeopleSalary >= 15000 and PeopleSalary <= 30000)
    --方案二:
    select * from People where
    (year(getdate())-year(PeopleBirth) between 30 and 40)
    and PeopleSalary between 15000 and 30000
    

    (16)查询出巨蟹 6.22—7.22 的员工信息

    select * from People where 
    (month(PeopleBirth) = 6 and DAY(PeopleBirth) >= 22) or
    (month(PeopleBirth) = 7 and DAY(PeopleBirth) <= 22)
    

    (17)查询工资比赵云高的人

    select * from People where PeopleSalary > 
    (select PeopleSalary from People where PEOPLENAME = '赵云')
    

    (18)查询出和赵云在同一个城市的人

    select * from People where PEOPLEADDRESS = 
    (select PEOPLEADDRESS from People where PEOPLENAME = '赵云')
    

    (19)查询出生肖为鼠的人员信息

    select * from People where year(PeopleBirth) % 12 = 4
    

    (20)查询所有员工信息,添加一列显示属相(鼠,牛,虎,兔,龙,蛇,马,羊,猴,鸡,狗,猪)

    --方案一:
    select PeopleName 姓名,PeopleSex 性别,PeopleSalary 工资,PeoplePhone 电话,PEOPLEBIRTH 生日,
    case
        when year(PeopleBirth) % 12 = 4 then '鼠'
        when year(PeopleBirth) % 12 = 5 then '牛'
        when year(PeopleBirth) % 12 = 6 then '虎'
        when year(PeopleBirth) % 12 = 7 then '兔'
        when year(PeopleBirth) % 12 = 8 then '龙'
        when year(PeopleBirth) % 12 = 9 then '蛇'
        when year(PeopleBirth) % 12 = 10 then '马'
        when year(PeopleBirth) % 12 = 11 then '羊'
        when year(PeopleBirth) % 12 = 0 then '猴'
        when year(PeopleBirth) % 12 = 1 then '鸡'
        when year(PeopleBirth) % 12 = 2 then '狗'
        when year(PeopleBirth) % 12 = 3 then '猪'
        ELSE ''
    end 生肖
    from People
    
    --方案二:
    select PeopleName 姓名,PeopleSex 性别,PeopleSalary 工资,PeoplePhone 电话,PEOPLEBIRTH 生日,
    case year(PeopleBirth) % 12
        when 4 then '鼠'
        when 5 then '牛'
        when 6 then '虎'
        when 7 then '兔'
        when 8 then '龙'
        when 9 then '蛇'
        when 10 then '马'
        when 11 then '羊'
        when 0 then '猴'
        when 1 then '鸡'
        when 2 then '狗'
        when 3 then '猪'
        ELSE ''
    end 生肖
    from People