• mysql 笔记四


    表数据操作

    insert 不指定具体的字段名

    	insert into table_name values(value1,value2,...)
    字段数相对应
    类型对应
    

    insert 选择字段插入

    	insert into table_name (col_name1,col_name2..) values(value1,value2,...)
    同时插入多条记录
    	insert into table_name [(col_namelist)] values(valuelist1)
    ,(valuelist2),....;
    # EX:
     	insert into user (name,passwd) values("duo",123) ,("weo",456),("wos",785);
    
    

    带字段约束条件的数据插入

    	create table dept  ( id int primary key auto_increment, name varchar(20) 	not null unique, location varchar(20) default 'A楼'  );
    
    	insert into dept values(null, '图书馆',default);
    

    将查询结果插入表

    	insert into table_name [(col_namelist)]
    Select_statement
    
    # select_statement:可以单独执行的查询语句
    

    数据修改和删除

    • UPDATE语句
    	update table_name SET column_name1 = value1, column_name2 = value2...;
    #注意
    如果一个字段的类型是时间戳类型(timestamp),那么这个字段在其他字段更新时自动更新。
    
    	update dept set location="B楼";
    
    • delete语句
    # 删除记录
    	delete from table_name [where 条件表达式];
    # 删除原来的表并重新创建一个表,速度比delete快。
    	truncate table_name;
    

    数据查询

    1. 查询所有字段
    	select * from table_name;
    2. 指定字段查询
    	select column_name1,column_name2 from table_name;
    EX: select name from user;
    3. distinct 避免重复数据查询(去重)
    	select distinct column_name from table_name;
    # 与之相对应的 ALL,(默认查询为ALL)
    4. 为表和字段取别名
    	select name as 姓名,passwd ps from user;
    #Ex:AS 也可用空格代替
    5. 查询表达式计算结果
    	select now();
    	select version();
    	select 会员名,year(now())-year(生日) as 年龄 from user;
    6. 表别名
     select * from user as 用户;
    

    where子句

    在select语句中,语句首先从from子句开始执行,执行后会生成一个中间结果集,然后开始执行where子句。where对from结果集进行过滤,返回true和FALSE,为true则继续留在结果集中,FALSE则移出该结果集。

    1. 比较运算符
    运算符 作用
    = 不保存
    <=> 相等或者等于空
    < 小于
    > 大于
    <= 小于或等于
    >= 大于或等于
    <> 不等于
    != 不等于
    BETWEEN min AND max 在man和max之间
    in(value1,value2..) 在集合(value1,value2...)中
    is null 为空
    is not null 不为空
    LIKE 模糊查询,使用通配符匹配
    regexp 或 rlike 正则表达式匹配

    EX:select * from user where name like 'd__';

    %:表示任意个或多个字符。可匹配任意类型和长度的字符。

    _:表示任意单个字符。匹配单个任意字符时,常用来限制表达式的字符长度(一个“—” 可以代表一个中文字符)

    逻辑运算符

    运算符 作用
    NOT 或 ! 逻辑非
    AND 或 & 逻辑与
    or 或 || 逻辑或
    XOR 逻辑异或

    位运算符

    位运算符是将给定的操作数转化为二进制后,对各操作数的每一位都进行指定的逻辑运算,得到的二进制结果转化为十进制后就是位运算的结果。

    位运算符 作用
    & 位于
    | 位或
    ^ 位异或
    ~ 位取反
    >> 位右移
    << 位左移
  • 相关阅读:
    shell进阶——expect免交互工具的使用
    SSH非交互式密码授权远程执行脚本---转载
    github新项目上传操作(下面的例子以centos7-redis-shell项目为实例)
    camstar跨平台开发
    C/C++语言中的int所能表示的最大值最小值
    剑指offer 15:二进制中1的个数
    剑指offer33:二叉搜索树的后序遍历序列
    剑指offer31:栈的压入弹出序列
    剑指offer:包含min函数的栈
    剑指offer50拓展:字符流中第一个不重复的字符
  • 原文地址:https://www.cnblogs.com/duoban/p/11559127.html
Copyright © 2020-2023  润新知