mysql必知必会 | SQL语句

SQL语句

sql基本概念

  • structured query language,结构化查询语言
  • 是一种在数据库管理系统中,查改数据库中数据的语言
  • 不同数据库管理系统的sql语句略有不同

sql语言的特点

  • 综合统一
  • 高度非过程化
  • 面向集合
  • 一种语法结构,提供两种使用方式(自含式&嵌入式
  • 简单易学

基本语法

数据类型
数据类型解释
char字符串
varchar边长字符串
clob字符串大对象
blob二进制大对象
int整型
smallint短整数
bigint大整数
检索数据 select
  • 检索单个列

    select <column name> from <table name>
    
  • 检索多个列

    select <column name1><column name2> from <table name>
    
  • 检索所有列

    select * from <table name>
    
    • 一般,除非真的需要用到表中的所有列,但是最好避免使用,因为检索不需要的列,通常会降低检索和应用程序的性能
  • 去掉重复值

    select distinct <column name1> from <table name>
    
    • distinct应用于所有列,不能部分使用
  • 限制结果行数

    select distinct <column name1> 
    from <table name>
    limit <num>
    
    select distinct <column name1> 
    from <table name>
    limit <begin row index>, <row nums>
    
    • 检索出的第一行序号是0,所以,limit 1, 1 将检索出第二行
    • 当行数不够时,mysql只返回能返回的行数
  • 排序检索结果

    select distinct <column name1> 
    from <table name>
    order by <column name> asc
    
    select distinct <column name1> 
    from <table name>
    order by <column name> desc
    
    • asc:升序排序
    • desc:降序排序
    • 可以使用,不在select语句中出现的属性列作为排序列
  • 按多个列排序

    select distinct <column name1> 
    from <table name>
    order by <column name1> desc, <column name2> asc
    
    • 对于每种属性排序,升序和降序可以单独设置
  • 过滤数据

    • where 子句
      select distinct <column name1> 
      from <table name>
      where <condition>
      order by <column name>
      
      • 数据如果在应用层过滤,会影响客户机应用处理数据库的工作影响性能,同时使服务器不得不通过网络发送多余的数据,浪费网络带宽
      • 同时使用whereorder by时,where在前,order by在后
      • where 子句操作符
        操作符说明
        =等于
        <>不等于
        !=不等于
        <小于
        <=小于等于
        >大于
        >=大于等于
        betwenn and指定两个值之间
        is null是空值
      • where 子句组合
        • and
        • or
        • in
        • not
      • 通配符 like
        • % 代表任意字符出现任意次数
        • _ 任意字符出现一次
      • 正则表达式
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值