sql语句+mysql权限

news/2024/9/17 18:56:26/ 标签: 数据库, mysql

sql语句

1.新增 

 

2.删除

3.修改

4.查询

单表查询

select  字段名列表  from 表名,索引

聚合函数

只有 select ⼦句和 having ⼦句、order by ⼦句中能使⽤聚合函 数,where ⼦句不能使⽤聚合函数。当使⽤聚合查询以后,不能 使⽤where条件,如果要添加条件,就使⽤having

统计表中数据的数或者统计指定列不为空值的数据⾏个数

select  count(*或表头名)  from  表名;

计算指定列的最⼤值,如果指定列是字符串类型(⽂字类型)则使⽤字符⾸拼排序

select max(表头名)  from 表名;

计算指定列的最⼩值,如果指定列是字符串类型(⽂字类型)则使⽤字符⾸拼排序

select min(表头名)  from 表名;

计算指定列的数值和,如果指定列不是数值类型则计算结果为 0

select sum(表头名)  from 表名;

计算指定列的平均值,如果指定列不是数值类型则计算结果为 0
select avg(表头名)  from 表名;

日期函数

获取当前⽇期和时间
select now();
显示输⼊⽇期的年份
select year('date');
计算输⼊的⽇期到年初的周数
select weekofyear ('date');
计算输⼊的⽇期到年初的天数
select dayofyear ('date');
显示输⼊⽇期的⽉份值
select month('date');
显示输⼊⽇期是⼏号
select day('date');

显示输⼊⽇期是⼀周中的第⼏天 (从周⽇开始)
select dayofweek('date');

mysql> select dayofweek('2024-8-7');
+-----------------------+
| dayofweek('2024-8-7') |
+-----------------------+
|                     4 |                     注:表示星期三
+-----------------------+

 

显示输⼊⽇期的⽉份的最后⼀天
select last_day('date');

mysql> select last_day('2024-8-7');
+----------------------+
| last_day('2024-8-7') |
+----------------------+
| 2024-08-31           |
+----------------------+
1 row in set (0.00 sec)

 

显示输⼊⽇期加多少天的结果
select adddate(current_date,需要加的天数);

mysql> select adddate('2024-8-7',3);
+-----------------------+
| adddate('2024-8-7',3) |
+-----------------------+
| 2024-08-10            |
+-----------------------+
1 row in set (0.00 sec)

 

显示输⼊⽇期减多少天的结果
select subdate(current_date,需要减的天数);

显示两个⽇期中间隔了多少天
select datediff ('date1','date2');

显示输⼊时间已经过了多少⼩时
select hour('time');
mysql> select hour('14:22:0');
+-----------------+
| hour('14:22:0') |
+-----------------+
|              14 |
+-----------------+
1 row in set (0.00 sec)

 

显示输⼊时间已经过了多少分钟
select minute('time');(time 为时间标准格式)
显示过了多少秒
select second('time');(time 为时间标准格式)
显示输⼊⽇期时间的时间值
select time('datetime');(datetime:标准⽇期格式)
显示输⼊⽇期
select date('datetime');

数字函数

显示带⼩数点数字的四舍五⼊的整数值或输⼊⼀个结果带⼩数点的算式

round() :四舍五入

显示⼤于输⼊数字的最⼩整数值或输⼊⼀个算式

ceiling() :向上取整

显示⼩于输⼊数字的最⼤整数值或输⼊⼀个算式

floor() :向下取整

保留多少位⼩数
select truncate(带⼩数点的数字,保留的位数);

mysql分组查询

select 聚合函数(表头名 1),表头名 2 from 数据表名 group by 表头名;
select 聚合函数(表头名) 临时表头名,真实表头名 from 数据表名 group by 真实表头名;

若⽤ group by 分组查询语句,必须加⼊聚合函数,否则报错

mysql子语句查询

⼦查询是指⼀个查询语句嵌套在另⼀个查询语句内部的查询;
该查询语句可以嵌套在⼀个 SELECT、SELECT...INTO、 INSERT...INTO 等语句中
在执⾏查询时,⾸先会执⾏⼦查询中的语句,再将返回的结果作为外层查询的过滤条件。
在⼦查询中通常可以使⽤⽐较运算符和 IN、EXISTS、ANY、 ALL 等关键字

比较运算符的子查询:

也就是⽤“=”、“<”、“>”这类⽐较运算符

exists关键字的子查询:

exists 关键字后⾯的参数可以是任意⼀个⼦查询, 它不产⽣任 何数据只返回 true 或 false。⽽当返回值为 true 时外层查询才会 执⾏。

相当于内层句⼦是⼀个判断句式

mysql多表联合查询

1、交叉连接查询
交叉连接返回的结果是被连接的两个表中所有数据⾏的笛卡尔
积;

select * from 表1 cross join 表2;

2、多表联合查询

语法:select 查询字段1,查询字段2, ... from 表1 join 表2 join ... on 表1.关系字段=表2.关系字段=...;
join:联合
on:条件

mysql基础权限

权限语法:

为客户机授权:

grant all on 库.* to户@客户机地址 identified by '密 码';all:表示所有权限,可替换为其他权限库.*:表示某个数 据库下所有数据表户@客户机地址:表示希望给予哪个户权限,前⾯的⽤户是临时⾃建⽤户,当客户机登录时,⽤户登录'密码'临时户的密码,也是临时⾃写的

查看给予客户机的权限:

show grants for ⽤户@客户机地址
取消权限:

revoke 权限列表 on 库.* from ⽤户@客户机地址;

刷新权限:

flush privileges;(重新加载权限表)
删除临时用户:

drop user '⽤户名'@'客户机地址';

客户机地址可以有以下表现形式:
%:表示所有地址
192.168.33.%:表示 33 ⽹段下所有主机,⼀般为你想为哪个⽹段授权,或为⾃⼰⽹段下的主机授权

查询有几条数据:

mysql> select count(*) from user;
+----------+
| count(*) |
+----------+
|        4 |
+----------+
1 row in set (0.01 sec)

mysql> select count(1) from user;
+----------+
| count(1) |
+----------+
|        4 |
+----------+
1 row in set (0.00 sec)

 

别名:

mysql> select id as 编号 from user;
+--------+
| 编号   |
+--------+
|      1 |
|      2 |
|      3 |
|      4 |
+--------+

 

mysql> select * from (select * from product order by qty)as a order by a.price;
+----+-----------+-------+-----+
| id | name      | price | qty |
+----+-----------+-------+-----+
|  1 | 香蕉      |   8.5 | 200 |
|  3 | 菠萝      |  12.4 |  70 |
|  2 | 苹果      |  12.5 | 400 |
|  4 | 哈密瓜    |  18.3 | 400 |
+----+-----------+-------+-----+
4 rows in set (0.00 sec)

 

mysql> select *,price*qty as tt from product;
+----+-----------+-------+-----+-------------------+
| id | name      | price | qty | tt                |
+----+-----------+-------+-----+-------------------+
|  1 | 香蕉      |   8.5 | 200 |              1700 |
|  2 | 苹果      |  12.5 | 400 |              5000 |
|  3 | 菠萝      |  12.4 |  70 | 867.9999732971191 |
|  4 | 哈密瓜    |  18.3 | 400 | 7319.999694824219 |
+----+-----------+-------+-----+-------------------+
4 rows in set (0.01 sec)

mysql> select sum(tt) from (select *,price*qty as tt from product) as a;

+--------------------+
| sum(tt)            |
+--------------------+
| 14887.999668121338 |
+--------------------+
1 row in set (0.00 sec)

 


http://www.ppmy.cn/news/1507516.html

相关文章

【mysql 第一篇章】系统和数据库的交互方法

一、宏观的查看系统怎么和数据库交互 在我们刚刚接触系统和数据库的时候不明白其中的原理&#xff0c;只知道系统和数据库是需要交互的。所以我们会理解成上图的形式。 二、MYSQL 驱动 随着我们的学习时间的加长以及对程序的了解&#xff0c;发现链接数据库是需要有别的工具辅…

乐凡三防平板:制造业移动作业平台的专业高效之选

在制造业数字化转型的浪潮中&#xff0c;移动作业平台成为了提升生产效率、优化管理流程的关键工具。其中&#xff0c;三防平板因其卓越的防护性能和高效的数据处理能力&#xff0c;正逐渐成为制造业移动作业的首选设备。本文将探讨三防平板如何为制造业带来专业高效的移动作业…

全新Bty分销系统源码v1.0/宝塔分销系统开源版源码/独立后台(附安装教程)

源码简介&#xff1a; 全新Bty分销系统源码v1.0&#xff0c;它作为宝塔分销系统开源版源码&#xff0c;功能强大&#xff0c;它内置了易支付功能&#xff0c;方便多了&#xff01; 这个Bty分销系统开源版&#xff0c;宝塔分销系统开源版。它基于宝塔开放的API底层控制器&…

鸿蒙AI功能开发【hiai引擎框架-主体分割】 基础视觉服务

hiai引擎框架-主体分割 介绍 本示例展示了使用hiai引擎框架提供的主体分割能力。 本示例模拟了在应用里&#xff0c;选择一张图片&#xff0c;识别其图片中的显著性主体并展示出来主体的边界框的数据。 需要使用hiai引擎框架通用文字识别接口hms.ai.vision.subjectSegmenta…

Npm使用教程(详细讲解)

​ 大家好&#xff0c;我是程序员小羊&#xff01; 前言 npm&#xff08;Node Package Manager&#xff09;是世界上最大的包管理器和软件注册表&#xff0c;专为 Node.js 生态系统设计。它是Node.js 的默认包管理工具&#xff0c;用于管理 JavaScript 项目的依赖项和包的安装、…

R 语言学习教程,从入门到精通,R 数据类型(6)

1、R 数据类型 数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统。 变量的类型决定了变量存储占用的空间&#xff0c;以及如何解释存储的位模式。 R 语言中的最基本数据类型主要有三种&#xff1a; 数字 逻辑 文本 数字常量主要有两种&#xff1a; 逻辑类型在许多…

Python知识点:使用Transformers进行预训练语言模型应用

使用Transformers库&#xff08;Hugging Face提供&#xff09;进行预训练语言模型的应用涉及几个步骤&#xff1a;安装库、加载预训练模型、进行文本生成或分类任务。以下是一个详细的示例流程。 安装依赖 首先&#xff0c;确保你安装了Transformers和其他必要的库&#xff1…

从数据分析到智能生产:AI在工业中的应用与未来

导语 | 人工智能技术的迅猛发展&#xff0c;正在引领第四次工业革命悄然而至。尽管 AI 技术在工业领域的部署仍有诸多难题亟待解决&#xff0c;但这并不能阻挡历史趋势的车轮滚滚向前&#xff0c;AI 正在为工业领域带来新的变革。今天&#xff0c;我们特邀了上海腾展长融董事 &…

iOS ------ 事件响应链

响应者链 响应者链是由一系列链接在一起的响应者&#xff08;UIResponser之类&#xff1a;UIApplication&#xff0c;UIViewController&#xff0c;UIView&#xff09;注组成的。一般情况下&#xff0c;一条响应链开始于第一响应者&#xff0c;结束于application对象。如果一个…

【生成式人工智能-七-大型语言模型的可解释性】

大型语言模型的可解释性 语言模型是如何工作的1.把文字变成Token2.将Token表示成向量3.考虑上下文Attention4.编码器和解码器 语言模型无法解释体现在那些方面&#xff1f;语言模型通过什么方法可以获得解释性通过语言模型的神经网络进行分析找出哪些是影响输出的关键输入分析a…

某永PM2项目管理系统ExcelIn接口任意文件上传漏洞复现 [附POC]

文章目录 某永PM2项目管理系统ExcelIn接口任意文件上传漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现某永PM2项目管理系统ExcelIn接口任意文件上传漏洞复现 [附POC] 0x01 前言 免责声明:请勿利用文章内的相…

cpp笔记07:STL

STL 基本概念 STL&#xff08;Standard Template Library&#xff0c;标准模板库&#xff09; STL从广义上分为&#xff1a;容器&#xff08;container&#xff09;算法&#xff08;algorithm&#xff09;迭代器&#xff08;iterator&#xff09; 容器和算法之间通过迭代器…

Postgresql数据库密码忘记的解决方法

如果你忘记了PostgreSQL数据库的密码&#xff0c;可以通过以下方法重置密码&#xff1a; 方法一&#xff1a;修改 pg_hba.conf 文件 找到 pg_hba.conf 文件&#xff1a; 这个文件通常位于 PostgreSQL 数据目录中。你可以通过以下命令找到该文件的位置&#xff1a; 复制代码 …

【前端】NodeJS:NodeJS模块化

文章目录 1 NodeJS模块化1.1 模块化与模块1.2 模块化项目1.3 模块化好处 2 模块暴露数据2.1 模块初体验2.2 暴露数据 3 导入&#xff08;引入&#xff09;模块4 导入模块的基本流程5 CommonJS规范 1 NodeJS模块化 1.1 模块化与模块 将一个复杂的程序文件依据一定规则&#xf…

leetcode数论(836. 矩形重叠)

前言 经过前期的基础训练以及部分实战练习&#xff0c;粗略掌握了各种题型的解题思路。现阶段开始专项练习。 数论包含最大公约数(>2个数)、最大公约数性质、最小公倍数、区间范围质因素计数(最下间隔)、质因素分解、判断质数、平方根、立方根、互质、同余等等。 描述 矩…

RK3399平台开发系列讲解(内核入门篇)module_init 的加载过程

🚀返回专栏总目录 文章目录 沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本文要研究的内容为编译进内核的驱动系统是如何运行的? 在驱动程序中,module_init 宏定义了驱动的入口函数,在模块加载时被内核自动调用, 该宏定义在内核源码目录下的“include/linux/…

rabbitmq出现Management API returned status code 500 -

我们在使用rabbitMq点击交换机时会发现提示以下错误&#xff1a; 解决方案&#xff1a; 1、进入容器中 docker exec -it rabbitmq的镜像id /bin/bash2、cd到目录/etc/rabbitmq/conf.d/ cd /etc/rabbitmq/conf.d/ 3、执行该命令 echo management_agent.disable_metrics_co…

【C++ 面试 - 基础题】每日 3 题(九)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/fYaBd &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 C 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏&…

React 条件判断

在 React 中&#xff0c;可以通过 JavaScript 的条件语句来动态渲染组件或元素。 以下是几种常用的在 React 中处理条件渲染的方法&#xff1a; 1. 使用 if 语句 在 render 方法或函数组件的返回值中使用 if 语句来决定渲染内容。 实例 import React from react; import R…

使用线上电子签合同靠谱吗?被国家认可的8款

盘点国内外安全靠谱的8大电子签合同工具&#xff1a;E签宝、上上签、法大大、DocuSign、腾讯电子签、爱签、Adobe Acrobat Sign、契约锁。 在互联网金融快速发展的今天&#xff0c;电子签合同已经成为新常态&#xff0c;它不仅简化了传统的文档处理流程&#xff0c;也提高了交易…