sql基础语法

sql语法学习 阅读详情

sql基础语法

– SQL(结构化查询语言) - 所有关系型数据库通用的语言
– DDL(数据定义语言) - create、drop、alter
– DML(数据操作语言) - insert、delete、update
– DQL(数据查询语言) - select
– DCL(数据控制语言) - grant、revoke

– 注意:SQL中不区分大小写;一条SQL语句结束必须加分号
– create = CREATE = CrEaTe

  1. DDL

– 1)创建数据库: create database if not exists 数据库名称 default charset utf8mb4;

create database if not exists school default charset utf8mb4;

– 2)删除数据库(灵魂拷问):drop database if exists 数据库名称;

drop database if exists school;

– 3)使用数据库:use 数据库;
– 在做表的操作前先需要通过use来确定数据库
use school;

– 4)创建表:create table 表名(字段名1 字段类型1 约束1 comment 说明1, 字段名2 字段类型2 约束2 comment 说明2,…);

– 注意:sql中字符串数据用单引号

– 创建表的时候必须添加主键约束,主键是能够表示表中唯一一条记录的字段

create table if not exists school.t_student2
(
stu_id int unsigned not null comment ‘学生的学号’,
stu_name varchar(4) not null comment ‘姓名’,
stu_gender boolean default 1 comment ‘性别’,
stu_birth date comment ‘生日’,
primary key (stu_id)
)engine=INNODB;

– 5)删除表(灵魂拷问)

drop table if exists t_student;

– 6)修改表 - 添加字段、删除字段、修改字段名称和类型

– a.删除字段

alter table t_student drop stu_birth;

– b.添加字段

alter table t_student add stu_addr varchar(50) comment ‘地址’;

– c.修改字段:alter table 表名 change 原字段名 新字段名 新字段类型 新的约束 comment ‘说明’;

– 注意:新的字段名和新类型必须写

alter table school.t_student change stu_gender stu_sex CHAR(1) default ‘男’ COMMENT ‘性别’;
alter table school.t_student change stu_name name varchar(4);

– MySQL常用数据类型:
– 数字:int、decimal
– 字符串类型:char(N)、varchar(N)
– 布尔:boolean、tinyint
– 时间:date、datetime、timestamp

– 字段常用约束:
– 不为空:not null
– 设置默认值:default 默认值
– 唯一的:unique
– 自动增长:auto_increment

– 2. DML
– 1)插入数据:

use school;
insert into t_student values(101, ‘余婷’, ‘女’, ‘重庆开县’);
insert into t_student values(102, ‘小明’, ‘男’, ‘四川成都’);

insert into t_student(stu_id, name, stu_addr) values(103, ‘张三’, ‘四川成都’);
insert into t_student(name, stu_addr, stu_id) values(‘李四’, ‘北京朝阳区’, 104));

insert into school.t_student(stu_id, name, stu_sex, stu_addr) values
(106, ‘路飞’, ‘男’, ‘四川德阳’),
(105, ‘娜美’, ‘女’, ‘广东深圳’),
(110, ‘山治’, ‘男’, ‘辽宁大连’),
(107, ‘乌索普’, ‘男’, ‘内蒙’);

– 2)删除数据
– sql的条件语句:
– where 字段=值
– where 字段>值/字段<值/字段>=值/字段<=值
– where 字段 in (值1, 值2, 值3,…)
– where 字段 between 值1 and 值2

delete from school.t_student where stu_id=101; – 删除学号是101的记录
delete from school.t_student where stu_id>105; – 删除学号大于105的所有记录
delete from school.t_student where stu_id in (102, 105, 107); – 删除学号是102、105和107的记录
delete from school.t_student where stu_id between 106 and 109; – 删除学号在106到109之间的所有记录
delete from school.t_student where name=‘张三丰’;

– 3)修改数据

update school.t_student set name=‘张三丰’ where stu_id=102;
update school.t_student set name=‘小花’, stu_sex=‘女’ where stu_id=103;

– 3. DQL
– 查询整个表中所有的数据:select * from 表名;
– 查询指定列所有的数据:select 字段1,字段2,… from 表名;
– 查询满足条件的所有列的数据:select * from 表名 where 条件;
– 查询满足条件的指定列的数据:select 字段1,字段2,… from 表名 where 条件;

select * from school.t_student; – 查整个表中所有的记录
select name from school.t_student;
select name, stu_addr from school.t_student;

select * from school.t_student where stu_id<105;
select stu_id,name from school.t_student where stu_id<105

作业

– 创建数据库school
– 创建学生表(stu_id,stu_name)、老师表(teach_id,teach_name)、学院表(yard_id,yard_name)、课程表(course_id,course_name) (每张表的字段不低于4个)
– 给每张表插入数据学生表-至少15条数据、老师表、学院表、课程表-至少5个

CREATE database school1 default charset utf8mb4;

CREATE table school1.t_stu(
stu_id int not null comment ‘学生号’,
stu_name varchar(4) not null COMMENT ‘学生名字’,
primary key(stu_id)
)engine = INNODB;
CREATE TABLE school1.t_teach(
teach_id int not null COMMENT ‘老师号’,
teach_name varchar(4) not null COMMENT ‘老师名字’,
primary key(teach_id)
)engine = INNODB;
CREATE TABLE school1.t_yard(
yard_id int not null COMMENT ‘学院号’,
yard_name varchar(16) not null COMMENT ‘学院名’,
primary key(yard_id)
)engine=INNODB;
CREATE TABLE school1.t_course(
course_id int not null COMMENT ‘课程号’,
course_name varchar(10) not null COMMENT ‘课程名’,
primary key(course_id)
)engine=INNODB;

insert into school1.t_stu(stu_id,stu_name) values
(1,‘溜1’),
(2,‘溜2’),
(3,‘溜3’),
(4,‘溜4’),
(5,‘溜5’),
(6,‘溜6’),
(7,‘溜7’),
(8,‘溜8’),
(9,‘溜9’),
(10,‘溜10’),
(11,‘溜11’),
(12,‘溜12’),
(13,‘溜13’),
(14,‘溜14’),
(15,‘溜15’);

insert into school1.t_teach(teach_id,teach_name) values
(1,‘余1’),
(2,‘余2’),
(3,‘余3’),
(4,‘余4’),
(5,‘余5’);

insert into school1.t_yard(yard_id,yard_name) values
(1,‘通信学院’),
(2,‘计算机学院’),
(3,‘体育学院’),
(4,‘艺术学院’),
(5,‘理学院’);

insert into school1.t_course(course_id,course_name) VALUES
(1,‘数学’),
(2,‘语文’),
(3,‘英语’),
(4,‘物理’),
(5,‘化学’);

【SQL】SQL的基础语法   想要成为一名数据研发工程师,SQL是必会的技能。数仓建模过程中用到Hive,其实也是通过写类SQL的语句,通过底层的引擎将其翻译成MapReduce程序,减少了程序员的开发量。除此之外,Spark、Flink等计算框架也支持使用SQL来实现查询。所以在面试的过程中,SQL是必须要考察的内容。今天先分享SQL的基础语法,而窗口函数是重中之重,后面单独写一篇进行讲解。 1.语法 SELECT 查询列表 FROM 表名或视图列表 WHERE 条件表达式 GROUP BY 字段名 HAVING 条件表达式 OR 阅读详情

相关推荐

【SQL】SQL语法树

1. 为什么会出现SQL语法树? 假设有一个SQL语句 select name,age,count(name) as count_name, count(id) as count_id from mytable where id = ? and name = ? 这是一条sql语句,如果你想运行这个语句(下面写伪代码,具体实现肯定不是这样的但是这是人实现的思想) 1.找到数据库表m...

九师兄 1万+

【SQL】一文带你掌握SQL基础语法

常用SQL语法整理 此篇帖子,主要是对SQL的一些基础语法知识进行整理 SQL分类: DDL(Data Definition Language)数据定义语言 用来定义数据库对象:数据库, 表, 列等. 关键字:create, drop, alter等 ...

m0_69383623的博客 5012

最新测算源码PHP算命源码-风水八字-八字起名-塔罗牌占卜

未来,随着技术的发展和用户需求的变化,我们可以继续对系统进行升级和优化,以满足更多用户的需求和期望。数据库设计:创建一个名为bazi的数据库表,包含以下字段:id(自增ID)、name(姓名)、sex(性别)、birth_date(出生日期)、birth_time(出生时间)、bazi(八字结果)。数据库设计:创建一个包含塔罗牌信息的数据库表,如tarot_cards,包含字段:id(塔罗牌ID)、name(塔罗牌名称)、meaning(塔罗牌含义)等。根据操作系统的不同,PHP的安装方法会有所不同。

shanbeizi的博客 2418

史上最全 SQL 基础知识语法

文章目录SQL基本介绍8、总结 SQL基本介绍 SQL (Structured Query Language):结构化查询语言,是一种针对关系型数据库特殊标准化的编程语言 SQL是一种编程语言 能够实现用户数据库查询和程序设计 SQL根据操作不同,分为几类 DQL: Data Query Language,数据查询语言,用于查询和检索数据 DML: Data Manipulation Language,数据操作语言,用于数据的写操作(增删改) TPL:Transaction Process L

YuLong的博客 2万+

Springboot项目中使用邮箱验证码注册登录的代码实现

本文介绍了在Spring Boot应用中实现邮箱验证码注册和登录功能的完整方案。文章首先概述了三种用户认证方式(邮箱验证码注册/登录和传统密码登录),然后详细说明了实现所需的技术栈(Spring Boot、Spring Security、JWT等)。重点阐述了邮件服务配置、验证码生成与存储的核心实现,包括QQ邮箱授权码获取、Thymeleaf邮件模板处理以及验证码缓存管理。最后展示了发送验证码和用户注册的API实现,为开发者提供了完整的参考方案。该方案兼顾安全性和用户体验,适合现代Web应用的用户认证需求。

BXCQ_xuan的技术专栏 | 实战干货·实践教程·学习笔记 1340

Jlink除了调试还能干啥?用JFlash SPI给W25Q64烧录固件的5个实用技巧

本文深入探讨了Jlink的隐藏功能,特别是通过JFlash SPI高效烧录W25Q64的5个进阶技巧。从硬件连接优化到批量处理脚本,再到数据安全验证,这些技巧能显著提升烧录速度和稳定性,适用于量产环境。文章还提供了详细的参数配置和脚本示例,帮助工程师充分发挥Jlink的潜力。

weixin_29164843的博客 409

sql语句的基础语法

语法:条件查询: select 字段列表 from 表名 [where条件列表] [ group by 分组字段]2.先查询入职时间在‘2015-01-01'(包含)以前的员工,并对结果根据职位分组,获取员工数量大于等于2的职位。显式内连接:select 字段列表 from 表1 [inner] join 表2 on 连接条件.;3)设置别名:select 字段 1[as别名1] , 字段2 [as别名2 ]from 表名。--B.查询部门表所有部门的名称,和对应的员工名称(右外连接)--;

lz1838156237的博客 2133

2025年MathorCup数学应用挑战赛【B题完整论文】附参考代码(免费分享)

摘。

RS_handy的博客 2694

SQL常用语法

【代码】SQL常用语法。

WL456258的博客 1092

【Docker安装】OpenEuler系统下部署Docker环境

【Docker安装】OpenEuler系统下部署Docker环境

jks212454的博客 4191

CCF编程培训师资认证(PTA)标准(教学能力T)

随着计算机科学的不断发展,计算机相关技术应用到社会各个行业,越来越多的青少年参加到了计算机程序设计的学习中,这对编程培训教师提出了更高的专业要求和职业要求。CCF开展编程培训师资认证项目(Programming Trainer Accreditation,PTA),旨在建立一个规范的、科学的、权威且有公信力的三方认证。认证考试分编程专业能力(P)和教学能力(T)两部分。本标准根据《CCF编程培训师资认证条例》第十条制定,旨在明确教学能力(T)的测试标准。

lan_in的博客 1712

SQL基本语法

SQL基础语法

Ray_mond_的博客 4485

纳米尺度仿真软件:Quantum Espresso_(13).非线性光学性质计算

通过 Quantum Espresso,可以高效地计算材料的非线性光学性质,包括二阶和三阶非线性极化率。这些性质在许多现代技术中具有重要的应用价值。在准备输入文件时,需要详细描述系统的晶格结构和原子位置,选择合适的基组和赝势,并设置计算参数和微扰设置。通过优化计算参数和使用并行计算,可以提高计算效率和精度。最后,使用适当的工具进行结果分析和可视化,可以更好地理解材料的非线性光学行为。

kkchenjj的博客 1278

SQL语法基础

@SQL语法基础 SQL语法基础 SQL 是用于访问和处理数据库的标准的计算机语言。 SQL 语句 需要在数据库上执行的大部分工作都由 SQL 语句完成。 tips: SQL 对大小写不敏感:SELECT 与 select 是相同的。 一些最重要的 SQL 命令 SELECT - 从数据库中提取数据 UPDATE - 更新数据库中的数据 DELETE - 从数据库中删除数据 INSERT INTO...

qq_28505705的博客 5886

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

SQL server 基础语法

SQL server 基础语法 SQL server 基础语法 语法简介 select 语句 select distinct 语句 where 语句 and &amp;amp; or 语句 order by 语句 insert into 语句 update 语句 delete 语句 语法简介 use database_name 使用某个数据库 SQL对大小写不...

qq_29735775的博客 2万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

SQL基础语法

SQL基础语法

weixin_44482104的博客 1851

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

SQL语法基础,进阶,高级sql语句学习

以上示例覆盖了SQL的核心操作、复杂查询及高级功能,可帮助巩固不同场景下的应用。如需进一步优化或扩展,建议结合具体业务需求调整语法细节。

DKPT的博客 1379

SQL语法

在这之后的语句,以分号结束,解释器不会有什么反应,只有遇到了 $,才认为是语句结束。因此,解释器遇到触发器执行动作中的分号后就开始执行,然后会报错,因为没有找到和 BEGIN 匹配的 END。DCL 以控制用户的访问权限为主,因此其指令作法并不复杂,可利用 DCL 控制的权限有:CONNECT、SELECT、INSERT、UPDATE、DELETE、EXECUTE、USAGE、REFERENCES。外连接返回一个表中的所有行,并且仅返回来自次表中满足连接条件的那些行,即两个表中的列是相等的。

2301_79037188的博客 1591

ClickHouse的SQL基础语法

ClickHouse常用SQL语法介绍及摘要。

胜利的曙光的博客 3499

2.SQL语法基础

DQL 是 SQL 中专门用于查询数据的子语言,核心语句是 SELECT。DQL 不修改数据,仅用于从数据库中检索数据,支持复杂条件过滤、多表关联、分组统计、排序分页等操作。

sucker的博客 1266
上一篇: ThreadAndProcess
下一篇: 外键约束和查询进阶
oklying
博客等级 码龄8年 6粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值