首页 > 数据库 >mysql基础知识

mysql基础知识

时间:2024-11-05 09:19:36浏览次数:3  
标签:存储 数据库 mysql 基础知识 SQL 字符串 数据 SELECT

数据库是系统化的工具,用来存放、检索和分析数据。它的核心价值在于帮助我们高效地处理信息,确保数据的准确性和安全性。想象一下,如果没有数据库,我们可能需要用无数的文件柜来存放各种文件,查找信息时就得一个一个翻,这很低效。

数据库的出现,就像是给这些文件柜装上了智能搜索系统,我们只需要输入一些关键词,就能快速找到想要的信息。

数据库的工作原理,是基于一套复杂的数据结构和算法,这些结构和算法能够确保数据的存储既有序又高效。它允许我们通过简单的查询语言,比如SQL,来访问和操作数据。

数据库还提供了数据的完整性和一致性保障。这意味着,无论何时何地,只要数据被访问或修改,数据库都能确保数据的准确性和可靠性。这对于需要处理大量交易和敏感信息的企业和组织来说,尤为重要。

SQL

SQL,全称Structured Query Language(结构化查询语言),是一种专门用来与数据库通信的编程语言。它被设计用来执行各种数据库操作,包括数据的查询、插入、更新和删除等。SQL语言以其简洁性和强大的功能而广受欢迎,几乎所有的现代数据库系统都支持SQL或其变体。

以下是SQL语言的一些基本组成部分和用途:

  1. 查询(Query):SQL最常用的功能是查询,即从数据库中检索数据。基本的查询语句是SELECT,可以指定需要检索的字段和条件。
  2. 插入(Insert):INSERT语句用于向数据库表中添加新的数据行。
  3. 更新(Update):UPDATE语句用于修改数据库中已存在的数据。
  4. 删除(Delete):DELETE语句用于从数据库表中移除数据。
  5. 数据定义(Data Definition):SQL还可以用来定义和管理数据库结构,如创建(CREATE)和删除(DROP)数据库对象,如表、索引等。

mysql数据类型

MySQL是一种流行的关系型数据库管理系统,它支持多种数据类型,用于存储不同类型的数据。以下是MySQL中一些常用的数据类型及其简要说明:
整数类型:

  1. TINYINT:1字节
  2. SMALLINT:2字节
  3. MEDIUMINT:3字节
  4. INT或INTEGER:4字节
  5. BIGINT:8字节

浮点数和小数类型:

  1. FLOAT:单精度浮点数。
  2. DOUBLE:双精度浮点数。
  3. DECIMAL或NUMERIC:用于存储精确的小数值,可以指定精度。

日期和时间类型:

  1. DATE:格式为YYYY-MM-DD。
  2. TIME:格式为HHMMSS。
  3. DATETIME:日期和时间的组合,格式为YYYY-MM-DD HHMMSS。
  4. TIMESTAMP:与DATETIME类似,但时间戳是自动设置为当前时间或最后更新时间。
  5. YEAR:存储年份的值,格式为YYYY。

字符串类型:

  1. CHAR:固定长度的字符串,长度在1到255之间。
  2. VARCHAR:可变长度的字符串,长度在1到255或1到65535之间,取决于最大长度的设置。
  3. TEXT:用于存储大量文本,最大长度为65,535。
  4. TINYTEXT、MEDIUMTEXT、LONGTEXT:分别用于存储更大量的文本,最大长度分别为255、16,777,215和4,294,967,295。

二进制数据类型:

  1. BINARY:固定长度的二进制字符串。
  2. VARBINARY:可变长度的二进制字符串。
  3. BLOB:用于存储大量二进制数据。
  4. TINYBLOB、MEDIUMBLOB、LONGBLOB:分别用于存储更大量的二进制数据。

枚举和集合类型:

  1. ENUM:允许从预定义的值列表中选择。
  2. SET:类似于ENUM,但允许从预定义的值列表中选择多个值。

空间数据类型:

  • GEOMETRY、POINT、LINESTRING、POLYGON等:用于存储地理空间数据。

mysql函数

MySQL提供了大量的内置函数,这些函数可以帮助你处理数据、执行计算、转换数据类型等。以下是一些常用的MySQL函数类别及其示例:
字符串函数:

  1. CONCAT():连接两个或多个字符串。
  2. LENGTH()或CHAR_LENGTH():返回字符串的长度。
  3. LOWER()和UPPER():将字符串转换为小写或大写。
  4. REPLACE():替换字符串中的某些字符。
  5. TRIM():去除字符串两端的空格。
  6. SUBSTRING()或SUBSTR():提取字符串的一部分。

1.

SELECT CONCAT('Hello','','World');

2.

SELECT LENGTH('Hello World');

3.

SELECT LOWER('HELLO');
SELECT UPPER('world');

4.

SELECT REPLACE('Hello World','World','wood')

5.

SELECT TRIM(' Hello World ');

6.

SELECT SUBSTRING('hello',1,3);

数值函数:

  1. ABS():返回数值的绝对值。
  2. CEILING()或CEIL():返回大于或等于数值的最小整数。
  3. FLOOR():返回小于或等于数值的最大整数。
  4. ROUND():将数值四舍五入到指定的小数位数。

1.

SELECT ABS(-1);

2.

SELECT CEILING(1.2);

3.

SELECT FLOOR(1.2);

4.

SELECT ROUND(1.111,2);

日期和时间函数:

  1. NOW():返回当前的日期和时间。
  2. CURDATE()和CURTIME():返回当前的日期和时间。
  3. DATEDIFF():计算两个日期之间的差异。
  4. DATE_ADD()和DATE_SUB():给日期加上或减去一个时间间隔。


 

了解这些函数可以帮助你更有效地编写SQL查询和处理数据。

标签:存储,数据库,mysql,基础知识,SQL,字符串,数据,SELECT
From: https://blog.csdn.net/2301_81490350/article/details/143482334

相关文章

  • 批发订货系统的设计、开发及源码实现(PHP + MySQL)
    随着电子商务的迅速发展,批发订货系统的需求日益增长。一个高效的批发订货系统不仅可以提高订货效率,还能优化库存管理,降低运营成本。本文将介绍一个基于PHP和MySQL的批发订货系统的设计、开发及其源码实现。1.系统需求分析1.1功能需求用户管理:用户注册、登录和权限管理......
  • 基于Java+SpringBoot+Mysql实现的快递柜寄取快递系统功能实现十
    一、前言介绍:1.1项目摘要随着电子商务的迅猛发展和城市化进程的加快,快递业务量呈现出爆炸式增长的趋势。传统的快递寄取方式,如人工配送和定点领取,已经无法满足现代社会的快速、便捷需求。这些问题不仅影响了快递服务的效率,也增加了快递员和消费者的不便。在这样的背景下,快递柜......
  • Java毕设项目案例实战II基于Java+Spring Boot+Mysql的果蔬作物疾病防治系统的设计与实
    目录一、前言二、技术介绍三、系统实现四、核心代码五、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言随着现代农业的快速发展,果蔬作物的健康生长与高效管理......
  • Java毕设项目案例实战II基于Java+Spring Boot+Mysql的公司资产网站设计与实现(开发文档
    目录一、前言二、技术介绍三、系统实现四、核心代码五、源码获取全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末一、前言在当今信息化高速发展的时代,企业资产的高效管理和精确......
  • MySQL主从复制
    https://blog.51cto.com/u_16175461/119038601.配置主服务器修改配置文件my.cnf[mysqld]server-id=1#设置id,这个可以是任意数字log-bin=/mydata/log/master-bin#启动binlog日志,名字必须是log-binsync_binlog=1......
  • IDEA连接mysql数据库
    再开始之前,我们需要下载mysql的数据库驱动jar包,下载地址如下:http://dev.mysql.com/downloads/connector/j/?os=26打开网址后选择第二个下载,下载后解压即可,解压后打开文件,后缀为.jar的即驱动jar包首先,我们在idea中新建一个project,这里我命名为test,大家还可以把project放到自己......
  • 开源数据库 - mysql - innodb源码阅读 - master线程(一)
    masterstruct/**Themasterthreadcontrollingtheserver.*/voidsrv_master_thread(){DBUG_TRACE;srv_slot_t*slot;//槽位THD*thd=create_internal_thd();//创建内部线程ut_ad(!srv_read_only_mode);//断言srv_read_only_m......
  • 【Python期末/课程设计】高校成绩管理系统(PyCharm项目/flask框架/MySQL数据库)
    代写C语言、C++、Java、Python、HTML、JavaScript、vue、MySQL相关编程作业,长期接单,信誉有保证,如有需要请加推广QQ。本文资源:【Python期末/课程设计】高校成绩管理系统(PyCharm项目/flask框架/MySQL数据库)1.题目要求题目描述:无编程软件:2.视频演示【Python期......
  • 深度学习基础知识-全连接层
    全连接(FullyConnected,简称FC)层是深度学习神经网络中一种基本的层结构。它主要用于神经网络的最后几层,将高层特征映射到输出空间中。全连接层对数据的每个输入节点与每个输出节点进行连接,用于实现输入特征和输出结果之间的映射关系。以下是对全连接层的详细解释。1.全连接层......
  • 数据库 PostgreSQL 和 MySQL 开源协议的区别
    说到开源数据库,很多人想到了MySQL和PostgreSQL数据库,这是两种比较有名和使用量较多的数据库技术,两者虽然都是开源的,但开源协议是不一样的。PostgreSQL遵循灵活的开源协议BSD,MySQL使用的是GPL(GNUGeneralPublicLicense)协议,二者有以下区别:1.商业使用限制方面-PostgreSQLBS......