• select简述,时区,date,time数据类型


    mysql里的增删改查简述

    插入:insert
    删除:delete
    修改:update
    查询:select

    select命令

    select * from 表名 –》查询某表的所有的列
    select * from 表名 where 列x 条件1 –》实现对某些行的查询
    select 列1,列2 from 表名 –》查询特定的某些列
    select 列1,列2 from 表名 where 列x 条件1 –》实现对某些行在某些列的特定查询

    select 列的一些常规语法

    算术计算:select 3*8;
    列别名:select name as 姓名;
    字符串连接:

    mysql>select NAME concat (TOWN,' ',STREET,' ',HOUSENO) "player address" from PLAYERS;

    这里写图片描述

    mysql> set @@session.sql_mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT';
    mysql> select NAME,TOWN||STREET||HOUSENO "player address" from PLAYERS;

    这里写图片描述

    (提示:如果直接执行带管道的命令,是不行的!!如下图:)

    这里写图片描述

    注意:concat 里面如果有null,则形成的表为空:

    这里写图片描述

    怎么改善这种情况:
    用CONCAT_WS,里面加逗号:
    eg:mysql>select id,CONCAT_WS(‘,’,First,last) “Full Name” from t1;
    【提示:
    concat_ws(‘,’)–》指定逗号作为分隔符;
    “full name”–》指定联合显示的列的名字
    这里写图片描述

    例子2:
    这里写图片描述

    很明显,用逗号作为分隔符了,并且连接显示的列名为指定的“pLAYER HOME ADDRESS” FROM PLAYERS”了。

    使用help去学习和使用select函数

    mysql>help contents;--》看help有哪些函数
    mysql>help functions;--》看功能函数有哪些

    这里写图片描述

    eg:
    mysql>select user();–》当前实际登录的用户;
    mysql>select database();–》当前在使用mysql里的哪个数据库;
    这里写图片描述

    MySQL的常量及数据类型

    • 常量:整数、小数、浮点数、字符串、日期、布尔(真和假)、16进制、位
    mysql>help data types;--》查看所有数据类型
    • 小数:
    mysql>create table t3(d1 dec(10,2));--》一共10位,小数最多2位。
    • 浮点数:
    mysql>create table t4(f1 FLOAT);--》 10e3
    • 布尔型:

    这里写图片描述
    或者
    这里写图片描述

    • 16进制:

    mysql>select 0x62;
    这里写图片描述
    这里写图片描述

    MySQL中date数据类型的输入

    日期:
    年月日:901101或者19901101
    (既:月日必须写!年可以四位可以两位!)
    这里写图片描述
    这里写图片描述

    显示系统的日期:

    mysql> select CURDATE();

    这里写图片描述

    或者 select CURRENT_DATE();

    这里写图片描述

    显示当前时间 :select CURRENT_TIME();

    这里写图片描述

    将字符串转换为日期:

    select STR_TO_DATE('01,5,2013','%d%m%Y');

    这里写图片描述

    time 数据类型的输入

    mysql> create table t14(t1 time);
    mysql>insert into t14 values(191001);

    这里写图片描述

    (time(3)):在秒后面加三位小数:
    这里写图片描述

    用str_to_date(’xx:xx:xx’,’%H%i%s’)添加时间:

    这里写图片描述

    添加年月日时分秒:

    mysql>insert into t15 values('1990-10-01''19:01:01');

    这里写图片描述

    用str_to_date();来添加年月日时分秒:

    这里写图片描述

    date和time的显示方法

    ①select * from t15;
    ②select date_format(d1,’%W,%M,%d,%Y,%T’) from t15;

    这里写图片描述

    (补:%W:星期几 %M:月份 %d:日子 %Y:年 %T:时间)

    操作系统时区的概念

    操作系统的时区:

    cat /etc/sysconfig/clock
    cat /usr/share/zoneinfo/Asia/Shanghai

    MySQL时区

    (mysql装完后有)系统时区:

    show variables like ‘system%’;

    这里写图片描述

    ( CST就是东八区 )
    (覆盖最广的) 全局时区:

    select @@global.time_zone;

    这里写图片描述

    会话时区:

    select @@session.time_zone;

    修改time_zone: (time_zone能够反映mysql服务器的位置)
    设置时区(time_zone):

    • set @@global.time_zone='+8:00';
    • set @@global.time_zone='Asia/shagnhai';
    • 在/etc/my.cnf 里加上:default_time_zone=Asia/Shanghai

    这里写图片描述
    (修改后要重启mysql)
    加载时区:
    mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql -uroot -p7777777 mysql; (把操作系统的时区传递到mysql)

    select * from mysql.time_zone_name;
    set time_zone='Asia/Shanghai';

    MySQL 时区正确使用规则

    (mysql存进去的时候,在里面是以零时区存着的,取出的时候再转换成对应的时区)
    数据表里面的列(为timestamp类型)
    会话进来

    MySQL 时区例子实践

    在终端1里:
    设置为东八区,建立一个表t16,插入时间为19:00:

    mysql>create table t16(t1 timestamp);

    这里写图片描述

    然后在终端2里:
    设置会话的时区为东时区,再次查看表t16,会发现时间多了2小时:

    这里写图片描述

  • 相关阅读:
    HTML5 3D 粒子波浪动画特效
    CSS3手机端侧滑菜单 4种滑动菜单特效
    HTML5 Canvas生成粒子效果的人物头像
    HTML5实现手势屏幕解锁
    Slideout.js – 触摸滑出式 Web App 导航菜单
    简历特训笔记
    leetcode-184-Department Highest Salary 优化记录
    正则表达式学习笔记
    【原创】第一次实习面试
    【原创】第一次做网站的总结
  • 原文地址:https://www.cnblogs.com/lpeng94/p/12546489.html
Copyright © 2020-2023  润新知