数据库SQL语句基础

本文涉及的产品
RDS MySQL DuckDB 分析主实例,集群系列 4核8GB
RDSClaw,2核4GB
RDS MySQL DuckDB 分析主实例,基础系列 4核8GB
简介: 数据库SQL语句基础(浅)

 一、SQL的通用语法

通用语法

1.SQL语句可以单行或者多行书写,以分号结尾。

2. SQL语句可以使用空格/缩进来增强语句的可读性。

3. MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。

4.注释:

.单行注释:--注释内容或#注释内容(MySQL特有)

·多行注释:/*注释内容*/

SQL分类

image.gif编辑

二、SQL语句-DDL

1、显示所有数据库

show databases;

结果:

image.gif编辑

2、使用某个数据库

use jobmessage;

3、创建表

create table 表名(内容)

create table user(

 id varchar(10),

 name varchar(50),

 gender varchar(20),

 age varchar(10)

)

结果:

image.gif编辑

三、SQL语句-DML

1、插入数据

insert into user (字段)values (数据);

示例:

insert into user (id, name, gender, age) values ('1', '小明','男', '18');

结果:

image.gif编辑

2、删除表

drop table 表名;

示例:

drop table user;

3、修改创建表的编码

alter table user default character set utf8;

4、修改表内字段的编码形式

alter table user change id id varchar(20) character set utf8;

alter table user change name name varchar(50) character set utf8;

alter table user change age age varchar(20) character set utf8;

四、SQL语句-DQL

2、查找数据

(1)查询所有数据

select * from 表名;

示例:

select * from user;(不建议使用)

select id,name,gender,age from user;

image.gif编辑

(2)查询单列数据

select 字段 from 表名;

示例:

select id from user;

image.gif编辑

(3)查询单列数据并按升序排序

select 字段 from 表名 order by 字段 asc

示例:

select age from user order by age asc;

结果:

image.gif编辑

(4)查询单列数据并按降序排序

select 字段 from 表名 order by 字段 desc

示例:

select age from user order by age desc;

结果:

image.gif编辑

五、用户管理-DCL

用户创建

1、创建用户 itcast,只能够在当前主机localhost访问,密码123456

create user '用户名'@'主机名' identified by '密码';

示例:

create user 'itcast'@'localhost' identified by '123456';

结果:

image.gif编辑

2、创建用户 heima,可以在任意主机访问,密码123456

create user '用户名'@'主机名' identified by '密码';

示例:

create user 'heima'@'%' identified by '123456';

image.gif编辑

3、修改用户 heima 的访问密码为1234

arter user '用户名'@'主机名' identified with mysql_native_password by '密码';

示例:

alter user 'heima'@'%' identified with mysql_native_password by '123456';

4、删除用户itcast

drop user '用户名'@'主机名';

示例:

drop user 'itcast'@'%'

用户权限

1、查询权限

show grants for '用户名'@'主机名';

示例:

show grants for 'heima'@'%';

结果:

image.gif编辑

2、授予权限

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';

示例:

grant all on itcast.* to 'heima'@'%';

3、撤销权限

revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

示例:

revoke all on itcast.* from 'heima'@'%';

六、函数

1、字符串函数

image.gif编辑

案例:

1、由于业务需求变更,企业员工的工号,统一为5位数,目前不足5位数的全部在前面补0, 比如:1号员工的工号应该为00001.

代码示例:update user set id = lpad(id, 5, '0');

结果:

image.gif编辑

2、数值函数

image.gif编辑

案例:

通过数据库的函数,生成一个六位数的随机验证码

代码示例:select lpad(round(rand()*1000000, 0), 6, '0');

结果:

image.gif编辑

3、日期函数

image.gif编辑

4、流程函数

image.gif编辑

create table score(

   id int comment 'id',

   name varchar(20) comment '姓名',

   math int comment '数学',

   english int comment '英语',

   chinese int comment '语文'

)comment '学员成绩表';

select * from score;

insert into score(id, name, math, english, chinese) values (1, 'Tom', 67, 88, 95),

                                                          (2, 'Rose', 23, 66, 98),

                                                          (3, 'Jack', 50, 60 ,85),

                                                          (4, 'Mack', 60, 49, 90);

--

select

   id,

   name,

   (case when math >= 85 then '优秀' when math >= 60 then '及格' else '不及格' end) '数学',

   (case when english >= 85 then '优秀' when english >= 60 then '及格' else '不及格' end) '英语',

   (case when chinese >= 85 then '优秀' when chinese >= 60 then '及格' else '不及格' end) '语文'

from score;

结果:

image.gif编辑


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
8月前
|
SQL 机器学习/深度学习 人工智能
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
本文系统性地阐述了自然语言转SQL(NL2SQL) 技术如何让非技术背景的业务分析师实现数据自助查询,从而提升数据驱动决策的效率与准确性。
从“写SQL”到“聊数据”:NL2SQL如何用自然语言解锁数据库?
|
7月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1244 152
|
7月前
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
924 156
|
10月前
|
SQL 关系型数据库 MySQL
Go语言数据库编程:使用 `database/sql` 与 MySQL/PostgreSQL
Go语言通过`database/sql`标准库提供统一数据库操作接口,支持MySQL、PostgreSQL等多种数据库。本文介绍了驱动安装、连接数据库、基本增删改查操作、预处理语句、事务处理及错误管理等内容,涵盖实际开发中常用的技巧与注意事项,适合快速掌握Go语言数据库编程基础。
1249 213
|
7月前
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
628 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
6月前
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
347 6
|
7月前
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
7月前
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
490 8
|
8月前
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
1063 8
|
8月前
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
374 5
下一篇
开通oss服务