iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >Mysql 常见函数、information_schema元数据库、查询、练习
  • 201
分享到

Mysql 常见函数、information_schema元数据库、查询、练习

数据库mysqlandroid 2023-10-28 05:10:22 201人浏览 独家记忆
摘要

常见的运算符 Mysql 提供了一些运算符号,可以在sql 语句中使用,比如需要对SQL 语句中的某个值,或者某个字段做运算操作的时候,就可以使用这些运算符。 比较运算符 运算符含义=字段等于固定的值

常见的运算符

  • Mysql 提供了一些运算符号,可以在sql 语句中使用,比如需要对SQL 语句中的某个值,或者某个字段做运算操作的时候,就可以使用这些运算符。

比较运算符

运算符含义
=字段等于固定的值
>
<
>=
<=
<> !=不等于
  • 查询出留言id 大于3 的所有留言。

    MariaDB [bbs]> select * from message where id > 3;+----+-----+-------+-------------------+| id | uid | title | content           |+----+-----+-------+-------------------+|  4 |   3 | Hello | My Name is admin! |+----+-----+-------+-------------------+1 row in set (0.00 sec)MariaDB [bbs]>

逻辑运算符

参与逻辑运算的操作数是布尔类型的值。

  • 真,表示为 True 或1。
  • 假,表示为 False 或0。
MariaDB [bbs]> select true;+------+| TRUE |+------+|    1 |+------+1 row in set (0.00 sec)MariaDB [bbs]> select false;+-------+| FALSE |+-------+|     0 |+-------+1 row in set (0.00 sec)MariaDB [bbs]>
  • and 与运算:有假则假。

    andTrueFalse
    TrueTrue and True = TrueTrue and False = False
    FalseFalse and True = FalseFalse and False = False
  • or 或运算:有真则真。

    orTrueFalse
    TrueTrueTrue
    FalseTrueFalse
  • ! 非运算:真假取反。

    !TrueFalse
    FalseTrue
  • ^ 异或运算:异真同假。

    ^TrueFalse
    TrueFalseTrue
    FalseTrueFalse
  • 查询出 id 在 2 到 4 之间的留言。

    MariaDB [bbs]> select * from message where id >2 and id < 4;+----+-----+-------+---------------------+| id | uid | title | content             |+----+-----+-------+---------------------+|  3 |   1 | ok!   | I'm fine!Thank you! |+----+-----+-------+---------------------+1 row in set (0.00 sec)MariaDB [bbs]>
  • 逻辑运算对真假性的影响。

    语句说明
    and 1=1 or 1=2判断条件的真假性取决于and 之前语句真假性
    and 1=2恒假
    or 1=1恒真

    算数运算符

    运算符含义
    +
    -
    *
    /
    MariaDB [bbs]> select 10/3=1+1;+----------+| 10/3=1+1 |+----------+|        0 |+----------+1 row in set (0.00 sec)MariaDB [bbs]>

    运算符优先级

    逻辑运算与 and 的优先级高于逻辑运算或 or。

    MariaDB [bbs]> select 1=1 or 1=2 and 1=2;+--------------------+| 1=1 or 1=2 and 1=2 |+--------------------+|                  1 |+--------------------+1 row in set (0.00 sec)MariaDB [bbs]> select 1=1 or (1=2 and 1=2);+----------------------+| 1=1 or (1=2 and 1=2) |+----------------------+|                    1 |+----------------------+1 row in set (0.00 sec)MariaDB [bbs]> select (1=1 or 1=2) and 1=2;+----------------------+| (1=1 or 1=2) and 1=2 |+----------------------+|                    0 |+----------------------+1 row in set (0.00 sec)MariaDB [bbs]>

数据库

元数据

  • 包括库名、表名、列名。
  • mysql 元数据存储在 infORMation_schema

结构

information_schema    |    +-- schemata            # 所有的库名    |   |    |   `-- schema_name     # 库名    |       +-- tables              # 存储了MySQL 数据库中所有的表    |   |    |   +-- table_name      # 表名    |   |    |   `-- table_schema    # 表名所属的库名    |    `-- columns             # 存储了MySQL 中所有的字段(列)        |        +-- column_name     # 字段名        |        +-- table_name      # 字段所属的表名        |        `-- table_schema    # 字段所属的库

information_schema 基本操作

  • 查询所有库名

    select schema_name from information_schema.schemata;
  • 查询所有的表名

    select table_name from information_schema.tables;
  • 查看表名所在数据库

    select table_name from information_schema.tables where table_schema='bbs';
  • 查询表中所有的列名

    select column_name from information_schema.columns

常见函数和语句

函数速查

函数名字含义
concat(S1,S2,…Sn)连接S1,S2,…Sn 为一个字符串
concat_ws()含有分隔符的连接字符串,第一个参数是分隔符
group_concat()连接一组字符串,使用逗号隔开
lower(str)将字符串str 中所有字符变为小写
upper(str)将字符串str 中所有字符变为大写
left(str,x)返回字符串str 最左边的x 个字符
right(str,x)返回字符串str 最右边的x 个字符
substring(str,x,y) substr(str,x,y)返回从字符串str x 位置起y 个字符长度的字符串
length(str)返回字符串长度
DATABASE()返回当前数据库名
VERSION()返回当前数据库版本
USER()返回当前登录用户名
MD5(str)返回字符串str 的MD5 值
sleep(x)让数据库沉睡x 秒钟的时间。
ABS(x)返回x的绝对值
FLOOR(x)返回小于x 的最大整数值
RAND()返回(0,1)内的随机值
ROUND(x,y)返回参数x 的四舍五入,保留y 位小数
ascii(x) ord(x)返回字母x 的ascii 码值
char(x)返回数字x 对应的字母
hex(x)计算数字x 的十六进制
IF(value,t,f)如果value 是真,返回t,否则返回f

解释

  • concat()

    无分隔符拼接字符串

    select username,passWord from user;select concat(username,0x3a,password) from user;# 在不允许使用引号的情况下 : 的 ASCII 码 
  • contact_ws()

    有分隔符拼接字符串,第一个参数是分隔符

    select concat_ws(0x5e,username,password) from user;select concat_ws(0x5e,'a','b','c','d') from user;# 0x5e 为 ^ 的 ASCII 码
  • group_concat()

    纵向连接(列)

    select group_concat(username) from user;
  • left()

    left(字符串,截取位数)

    从字符串左侧开始截取字符

    select left("abcde",2);
  • substr()

    substr("字符串",开始位置,字符串长度)

    从 1 开始而非 0

    select substr("abcdefgh",1,1);select substr("abcdefgh",2,3);
  • length()

    字符串长度

  • if()

    • 第一个参数,判断条件,返回值为true 或者false;
    • 如果判断条件为true,返回第二个参数;
    • 如果判断条件为false,返回第三个参数。

练习

  • 进入元数据数据库

    use information_schema;

    image-20231010105745538

  • 查看元数据库中所有表名

    show tables;

    image-20231010110114249

  • 查询出所有的库名

    select schema_name from schemata; 

    image-20231010112532731

  • 查询bbs 数据库中所有表名

    select table_name from information_schema.tables where table_schema='bbs';

    image-20231010111124319

  • 查询bbs.message 表中所有列名

    select column_name from information_schema.columns where table_schema='bbs' and table_name='message';

    image-20231010111517167

来源地址:https://blog.csdn.net/weixin_51559599/article/details/133742902

您可能感兴趣的文档:

--结束END--

本文标题: Mysql 常见函数、information_schema元数据库、查询、练习

本文链接: https://www.lsjlt.com/news/513924.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Mysql 常见函数、information_schema元数据库、查询、练习
    常见的运算符 MySQL 提供了一些运算符号,可以在SQL 语句中使用,比如需要对SQL 语句中的某个值,或者某个字段做运算操作的时候,就可以使用这些运算符。 比较运算符 运算符含义=字段等于固定的值...
    99+
    2023-10-28
    数据库 mysql android
  • 数据库之MySQL数据操作练习
    目录 练习内容 worker表要求 创建的表的表结构 表中的数据内容 对数据的操作 1.显示所有职工的基本信息 2.查询所有职工所属部门的部门号,不显示重复的部门号 3.求出所有职工的人数 4.列出最高工和最低工资 5.列出职工的平均工资...
    99+
    2023-09-20
    数据库 mysql
  • 数据库中10道日常练习题
    这篇文章给大家分享的是有关数据库中10道日常练习题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1、下列四项中,不属于数据库系统的特点的是( )正确答案: C 数据结构化数据由DBMS统一管理和控制数据冗余度大数...
    99+
    2023-06-20
  • MySQL-查询数据库(一)
    有志者,事竟成 文章持续更新,可以微信搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。 ...
    99+
    2023-09-07
    mysql java 数据库
  • mysql数据库怎么查询数据的
    在 mysql 中查询数据,可以使用 select 语句,语法:select 列名from 表名where 条件;可选参数包括 distinct(去除重复记录)、li...
    99+
    2024-04-22
    mysql
  • Mysql数据库时间查询
    1、查询当前时间  年月日时分秒 select now();   2、查询当前时间 前三小时 的时间点 select subdate(now(),interval 3 hour);   3、查询当前时间  前三天 的时间点 select...
    99+
    2023-09-10
    java sql 开发语言
  • 数据库之MySQL查询去重数据
    最近遇到了一个问题,当时我的第一反应是导出来,用wps的Excel表格的删除重复项的功能,简单粗暴又直接,但是没有考虑到数据量太大的情况,会导致Excel打开缓慢。这个时候就考虑有没有更方便快捷的方法,网上也查询了很多方法,但是实践出真知,...
    99+
    2023-09-03
    数据库
  • 【MySQL数据库】- 多表查询
    🍁博客主页:👉@不会压弯的小飞侠 ✨欢迎关注:👉点赞👍收藏⭐留言✒ ✨系列专栏:👉MySQL数据库专栏 ✨欢迎加入社区: 👉不会压弯的小...
    99+
    2023-08-17
    数据库 mysql sql
  • Mysql数据库慢查询常用优化方式
    目录慢查询日志概念一、数据库中设置SQL慢查询1、mysql慢查询相关配置参数介绍2、实现配置步骤二、分析慢查询日志三、常见的慢查询优化1、索引没起作用的情况2、优化数据库结构3、分解关联查询4、优化LIMIT分页四、常...
    99+
    2023-05-05
    mysql如何优化慢查询 如何优化慢查询sql 优化mysql查询速度
  • MySQL数据库——MySQL LIKE:模糊查询
    在 MySQL 中,LIKE 关键字主要用于搜索匹配字段中的指定内容。其语法格式如下: [NOT] LIKE  '字符串' 其中: NOT :可选参数,字段中的内容与指定的字符串不匹配时满足条件。字符串:指定用来匹配的字符串。“字符串...
    99+
    2023-10-19
    数据库 mysql java
  • 跟晓月一起练: MySQL常用SQL语句查询及数据库表的操作
    前言 mysql的学习,多练习才是最重要的。 关注我的云原生社区:云原生社区 关注我的英语社区:从零开始学英语 文章目录 前言一. 电商网站的数据库练习1.1 电商网站常见模块1.2 用户模块...
    99+
    2023-09-09
    数据库 mysql 运维 原力计划
  • MySQL数据库的查询操作
    目录 一、数据查询语句的基本格式 二、单表查询 查询表中的若干列 查询指定列 查询经过计算的值 选择表中的若干元组 去重 条件查询 order by 子句 聚集函数 group by 子句 三、连接查询 等值与非等值连接查询 外连接 多表连...
    99+
    2023-09-06
    数据库 sql mysql
  • MySQL数据库——复杂查询(二)
    目录 第1关 查询学生平均分 一、本关任务:根据提供的表和数据,查询平均成绩小于60分的同学的学生编号(s_id)、学生姓名(s_name)和平均成绩(avg_score),要求平均成绩保留2位小数点。(注意:包括有成绩的和无成绩的) 二、...
    99+
    2023-10-28
    数据库 mysql
  • 如何查询mysql的数据库
    本篇内容介绍了“如何查询mysql的数据库”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • MySQL数据库子查询 sub query
    目录1、基本概念1.1、子查询1.2、主查询1.3、子查询和主查询的关系1.4、子查询的分类2、标量子查询2.1、基本语法2.2、示例3、列子查询3.1、基本语法3.2、示例4、行子...
    99+
    2024-04-02
  • mysql怎么查询数据库表数量
    要查询数据库中的表数量,可以使用以下SQL语句: SELECT COUNT(*) FROM information_sche...
    99+
    2024-04-02
  • MySQL数据库查询之多表查询总结
    目录多表关系表与表之间的联系:一对多(多对一)多对多一对一多表查询多表查询的分类1.连接查询:2.子查询内连接外连接自连接联合查询子查询标量子查询列子查询行子查询表子查询多表查询案例...
    99+
    2022-11-13
    mysql多表查询语句 mysql多表连接查询方式 mysql多表查询面试题
  • Vue实现模糊查询-Mysql数据库数据
    目录1.需求2.实现3.结果1.需求 输入框中输入数据,根据输入的结果模糊搜索数据库对应内容,实现模糊查询。 2.实现 输入框使用v-model双向绑定查询数据keyWord。 &...
    99+
    2024-04-02
  • 数据库日常练习题之在数据库中存储的是什么
    这篇文章主要介绍数据库日常练习题之在数据库中存储的是什么,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、在数据库中存储的是( )正确答案: C 数据数据模型数据及数据之间的联系信息题解:数据库中存储的不仅是数据,还...
    99+
    2023-06-20
  • MySQL学习必备条件查询数据
    目录一、条件查询二、比较运算符三、逻辑运算符四、范围查询五、空判断六、模糊查询七、优先级一、条件查询 利用where语句可以对数据进行筛选 select * fr...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作