zoukankan      html  css  js  c++  java
  • SQL基本语法

    SQL 基本语法

    表库操作

    • 创建表
    	create table 表名(
    		字段名 类型(长度) 约束,
    		字段名 类型(长度) 约束
    	);
    
    • 创建主键约束

    id int primary key,

    primary key(id) // 在创建表最后创建主键约束

    • 删除主键

    alter table 表名 drop primary key;

    • 主键自动增长

    主键字段后加auto_increment(只适用MySQL)

    • 查看所有的库

    show databases

    • 使用库

    use 库名

    • 查看所有的表

    show tables;

    • 查看表的结构

    desc 表名;

    • 修改表名

    rename table 表名 to 新表名;

    • 删除表

    drop table 表名;

    数据操作

    • 插入数据

    insert into 表 (列名1,列名2,列名3..) values (值1,值2,值3..);

    • 更新数据

    update 表名 set 字段名=值,字段名=值 where 条件;

    • 删除数据

    delete from 表名 [where 条件];

    查询操作

    • 查询并且去掉重复记录

    select distinct 字段 from 表名 where 条件;

    • 别名查询

    select * from 表名 as 别名 where 条件;

    select 字段名 as 别名 from 表名 where 条件;;

    • while条件的种类

    • Or 和 in

    SELECT * FROM zhangwu WHERE money IN(1000,5000,3500);

    SELECT * FROM zhangwu WHERE money =1000 OR money =5000 OR money =3500;

    • like

    SELECT * FROM zhangwu WHERE name LIKE "%支出%";

    • not null

    SELECT * FROM zhangwu WHERE name IS NOT NULL;

    排序查询

    order by 列名 [desc][asc] desc 降序, asc 升序(默认) 最好将order by 函数放到最后

    SELECT * FROM zhangwu ORDER BY zmoney DESC ;

    聚合函数

    • 聚合函数查询是纵向查询,

    • count:统计指定列不为NULL的记录行数;

    • sum:计算指定列的数值和,如果指定列;

    • max:计算指定列的最大值,

    • min:计算指定列的最小值,

    • avg:计算指定列的平均值

    SELECT COUNT(*)AS'count' FROM zhangwu

    SELECT SUM(zname) FROM zhangwu WHERE zname LIKE'%收入%'

    分组查询

    分组查询是指使用group by字句对查询信息进行分组,一般和聚合函数一起用, 查询相同字段的数据

    SELECT 字段1,字段2… FROM 表名 GROUP BY 字段 HAVING 条件;

    分组操作中的having子语句,是用于在分组后对数据进行过滤的,作用类似于where条件。

    having与where的区别

    1.having是在分组后对数据进行过滤.
    
    2.where是在分组前对数据进行过滤
    
    3.having后面可以使用分组函数(统计函数)
    
    4.where后面不可以使用分组函数。
    

    select count(id),name from gDemo GROUP BY name // 根据名字分组, 即查询相同名字的列数有多少

    列操作

    • 添加列

    alter table 表名 add 列名 类型(长度) 约束;

    • 修改列

    alter table 表名 modify 列名 类型(长度) 约束;

    • 更换列

    alter table 表名 change 旧列名 新列名 类型(长度) 约束;

    • 删除列

    alter table 表名 drop 列名;

  • 相关阅读:
    Oracle数据库事务
    MSSQL数据库事务
    MSSQL公用方法查询最新ID
    UISwitch的用法总结开关用法
    iPhone和ipad键盘高度及键盘响应事件 摘
    ios 6 的 小改变
    instance method 'addMask' not found (return type defaults to 'id')
    关于tableView group样式 时设置 cell的width 宽度
    判断 iPhone 虚拟键盘是否打开的代码 (转)
    UITextField 控件详解 我见过的史上最牛x的
  • 原文地址:https://www.cnblogs.com/liyuhui-Z/p/7718643.html
Copyright © 2011-2022 走看看