zoukankan      html  css  js  c++  java
  • 数据库一些常用的SQL语句

    1.多表连接查询:

    假设现在有三个表,One,Two,Three;

    One表字段:Code(主键),Name

    Two表字段:Birthday,T_code(One表Code的外键)

    Three表字段:Sex,Age,Th_bir(Two表Birthday外键)

    (1)查询Code,Name,Birthday,Sex,Age:

    select One.Code,Name,Two.Birthday,Three.Sex,Age from Two join One on One.Code=Two.T_code

     join Three on Two.Birthday=Three.Th_bir

    多表连接查询时将与所有表有主外键关系的表当做查找的表,join关联的表,on 关联的字段,如上面的例子,如果以Two表数据为主,过滤其他表中多余的数据,

    可以用Left join ,以左边主要查询的表为主,如果要以后面的表的数据为主,可以用right join

    (2)过滤掉重复的条件distinct

       distinct:可以自动过滤到多余的条件,此方法仅用于去重复,可以用作单独条件查询,普通全表查询慎用,他会将表中所有有重复的数据过滤掉,以免造成查询数据不完整

       用法:select  distinct 查询的字段 from 表格

    (3)数据转换,如果Three表中Sex字段存的是0和1,现在查询这个表,将0显示男,1显示女,case when then  end查询方式

        用法1:select Age,case  Sex when 0 then '男'  when 1  then  '女'  end  as  Sex  from  Three

        用法2:select Age,case  when Sex=0 then '男'  when Sex=1  then  '女'  end  as  Sex  from  Three

        case 后面是要转换的字段,when后面是这个字段在数据库所存的信息,满足when的条件就执行then,将要改为的数据放在then后面,多条件最后条件也可以用else,

        最后end结束,as是转换这个字段查询出来的显示,也就是用这个方法查完数据Sex列名将显示一长串字符,as可以转换为自己定义的,一般还是转换为原字段名称,以免在

        开发程序操作数据库时出错

    2.截取字符串

      如果在开发中遇到需要操作一个字段,只需要这个字段数据的一部分,而不是全部,可以用字符串截取方式(substr(字段名,从哪一位截取,到哪一位))

      例:现在有一个人员信息表(Information),其中一列(birth)存的是出生年月xxxx-xx-xx的形式,现在要查找出生年份是1993年的所有用户信息

         select  substr(birth,0,4)  from  Information,这是将所有的信息年份截取出来,显示出生年月这一列的所有年份

         select * from  Information where substr(birth,0,4) ='1993'  这是查询年份为1993的所有人员信息

    同理,修改也可以用这个作条件,将所有5月份生日的人的性别(sex)改为先生

    Update Information set  sex='先生'  where substr(birth,6,7)='05'

    删除也可以,将所有1992年6月份生日的人删除:delete from Information  where   substr(birth,0,7)='1992-06'

  • 相关阅读:
    Python装饰器
    Python导模块问题
    selenium定位元素提示‘元素不可见’问题解决方法
    Python导入模块Import和from+Import区别
    关于iframe切换的问题
    Python+selenium 模拟wap端页面操作
    使用Pytesseract+TesseractOCR识别图片的简单步骤
    通过cookie绕过验证码登录
    oo第三次作业——项目的问题与反思
    Java_第二次作业:项目构思与实现
  • 原文地址:https://www.cnblogs.com/zyg316/p/5984921.html
Copyright © 2011-2022 走看看