当前位置: 首页 > news >正文

SQL_语法

1 数据库

1.1 新增

create database [if not exists] 数据库名;

1.2 删除

drop database [if exists] 数据库名;

1.3 查询

 (1) 查看所有数据库

show databases;

(2) 查看当前数据库下的所有表

show tables;

2 数据表

2.1 新增

(1) 创建表

create table [if not exists] db_name.table_name (column_name data_type(size) comment '注释',...
) comment '表名';

  
(2) 复制表

-- 只复制表结构
create table 新表名 as
select * from 旧表名;-- 只复制表结构
create table 新表名 like 旧表名; -- 复制表结构及其数据
create table 新表名 as
select * from 旧表名;

(3) 生成临时表

表名 as (查询语句)

(4) 创建视图

create or replace view view_name as select statement

2.2 删除

(1) 删除表

drop table [if exists] 表名;

(2) 删除视图

drop view view_name;

2.3 修改

(1)  修改表名

-- rename:重命名,包括索引、表名
alter table 旧表名 rename to 新表名;

2.4 查询

(1) 查看表结构

desc 表名;show create table 表名;

3 数据

3.1 新增

(1) insert into ... values

-- 1 按指定列插入数据
insert into table_name 
(field1,field2...fieldn )
values (value1,value2,...valueN)
,(...)
;-- 2 所有列插入数据
insert into table_name
values (value1,value2,...valueN)
;

(2) insert into ... select

-- 1 从一个表中复制所有的列插入到另一个表中
insert into table2 
select * from table1; -- 2 从一个表中复制指定列插入到另一个表的指定列中
insert into table2 (column_name(s)) 
select column_name(s) from table1; 

3.2 删除

(1) 清空表

truncate table table_name;

​3.3 查询

(1) 条件查询

select-- as:为表名称或列名称指定别名,提高可读性列名1 as 列别名,列名2 as 列别名
from 表名 as 表别名
where 列名 运算符 列名/常量
[limit number]

(2) 去重查询

select distinct 字段名1,... from table1;

 (3) 分组查询

①group by

-- group by:根据一个或多个列对结果集进行分组,在分组的列上可以使用 count、sum、 avg等函数
select 列名,分组函数(列名)
from 表名
group by 列名
-- 分组后过滤
having 表达式
;

②group by ... grouping sets

-- grouping sets允许采用多种方式对结果分组,而不必使用多个select语句,从而提高执行性能.
-- grouping sets语法和普通group by类似,但需要额外执行所需的多个group by组合.例如以下sql的(列名1,列名2), ()),每个内层括号执行一个group by组合,空括号表示group by列表为空,即所有列
select 列名1,列名2,分组函数(列名) 
from 表名 
group by 列名1,列名2 
grouping sets((列名1,列名2),())
;

(4) 排序查询

-- 将查询数据排序后再返回数据,按字段值升序/降序,控制NULL值在排序后的结果中的位置.默认升序
select 列名 from 表名 order by 列名 [asc|desc] [nulls first|nulls last]

4 多表关联查询

4.1 多表关系

        ①一对一:将其中一方假设成多的一方,在多的一方添加外键指向一的一方的主键,并且给外键字段添加unique约束;

        ②一对多:在多的一方添加外键指向一的一方的主键;

        ③多对多:借助一张中间表,在中间表中至少有两个字段分别指向多对多双方的主键.

4.2 连接查询

(1) 内连接:获取两个表中字段匹配关系的记录

select表1.列名11,表1.列名12,...,表2.列名21,表2.列名22
from 表1
[inner] join 表2 on 表1.列名11 = 表2.列名21and 表1条件and 表2条件
;

(2) 左连接:获取左表所有记录,即使右表没有对应匹配的记录

select表1.列名11,表1.列名12,...,表2.列名21,表2.列名22
from 表1
left join 表2 on 表1.列名11 = 表2.列名21and 表2条件
where 表1条件
;

(3) 右连接:获取右表所有记录,即使左表没有对应匹配的记录

select表1.列名11,表1.列名12,...,表2.列名21,表2.列名22
from 表1
right join 表2 on 表1.列名11 = 表2.列名21and 表1条件
where 表2条件
;

4.3 子查询

(1) where型子查询

-- 单值子查询:把内层查询结果当作外层查询的比较条件
select 列名,列名... from 表1 where 列名1 = (select 列名1 from 表2);-- in子查询:把内层查询结果当作外层查询的比较条件
-- 适用于子查询得出的结果集记录较少,主查询中的表较大且又有索引的情况
select 列名,列名... from 表1 where 列名 in (select 列名 from 表2);-- exists子查询:把外层sql的结果,拿到内层sql去查询,如果内层的sql成立,则该行取出
-- 适用于外层的主查询记录较少,子查询中的表大又有索引的情况
select 列名,列名... from 表1 where exists (select 列名 from 表2 where 表1.列名1 运算符 表2.列名1);

(2) from型子查询

-- 内层的查询结果当成临时表,供外层sql查询
select 列名1,列名2... from (select 列名1,列名2... from 表名) as 表别名;

4.4 联合查询

-- union:将不同表中相同列中查询的数据展示出来,不包括重复数据
select 列名称 from 表1名称 union select 列名称 from 表2名称;-- union all:将不同表中相同列中查询的数据展示出来,不包括重复数据
select 列名称 from 表1名称 union all select 列名称 from 表2名称;

5 针对性语法

MySQL_语法文章浏览阅读925次。(5) 主键约束:约束该单字段(或字段组)的值具有唯一性,不为null且不为空,且只有一个主键约束.如主键是整数型,可配合auto_increment实现主键自增长.(6) 外键约束:限制两个表的关系,保证该字段的值必须来自于主表的关联列的值.使用时在从表添加外键约束,用于引用主表中某列的值.要求主键和外键的数据类型必须一致.(2) 默认值约束(default):约束该字段有默认值,即该字段不输入值时,会给一个默认值.一般结合非空约束使用.(1) 非空约束:约束该字段的值不能为null._create table `notification` if not exis https://blog.csdn.net/weixin_43875878/article/details/108302141Hive_语法文章浏览阅读911次。【代码】Hive_语法。_hive as 别名 https://blog.csdn.net/weixin_43875878/article/details/115050269

相关文章:

SQL_语法

1 数据库 1.1 新增 create database [if not exists] 数据库名; 1.2 删除 drop database [if exists] 数据库名; 1.3 查询 (1) 查看所有数据库 show databases; (2) 查看当前数据库下的所有表 show tables; 2 数据表 2.1 新增 (1) 创建表 create table [if not exists…...

基于Python实现的智能旅游推荐系统(Django)

基于Python实现的智能旅游推荐系统(Django) 开发语言:Python 数据库:MySQL所用到的知识:Django框架工具:pycharm、Navicat 系统功能实现 总体设计 系统实现 系统首页模块 统首页页面主要包括首页,旅游资讯,景点信息…...

安孚科技携手政府产业基金、高能时代发力固态电池,开辟南孚电池发展新赛道

安孚科技出手,发力固态电池。 3月7日晚间,安孚科技(603031.SH)发布公告称,公司控股子公司南孚电池拟与南平市绿色产业投资基金有限公司(下称“南平绿色产业基金”)、高能时代(广东横…...

p5.js:模拟 n个彩色小球在一个3D大球体内部弹跳

向 豆包 提问:编写一个 p5.js 脚本,模拟 42 个彩色小球在一个3D大球体内部弹跳。每个小球都应留下一条逐渐消失的轨迹。大球体应缓慢旋转,并显示透明的轮廓线。请确保实现适当的碰撞检测,使小球保持在球体内部。 cd p5-demo copy…...

Kali WebDAV 客户端工具——Cadaver 与 Davtest

1. 工具简介 在 WebDAV 服务器管理和安全测试过程中,Cadaver 和 Davtest 是两款常用的命令行工具。 Cadaver 是一个 Unix/Linux 命令行 WebDAV 客户端,主要用于远程文件管理,支持文件上传、下载、移动、复制、删除等操作。Davtest 则是一款…...

MySQL复习笔记

MySQL复习笔记 1.MySQL 1.1什么是数据库 数据库(DB, DataBase) 概念:数据仓库,软件,安装在操作系统(window、linux、mac…)之上 作用:存储数据,管理数据 1.2 数据库分类 关系型数据库&#…...

六十天前端强化训练之第十四天之深入理解JavaScript异步编程

欢迎来到编程星辰海的博客讲解 目录 一、异步编程的本质与必要性 1.1 单线程的JavaScript运行时 1.2 阻塞与非阻塞的微观区别 1.3 异步操作的性能代价 二、事件循环机制深度解析 2.1 浏览器环境的事件循环架构 核心组件详解: 2.2 执行顺序实战分析 2.3 Nod…...

集合论--形式化语言里的汇编码

如果一阶逻辑是数学这门形式化语言里的机器码,那么集合论就是数学这门形式化语言里的汇编码。 基本思想:从集合出发构建所有其它。 构建自然数构建整数构建有理数构建实数构建有序对、笛卡尔积、关系、函数、序列等构建确定有限自动机(DFA) 全景图 常…...

2025最新群智能优化算法:山羊优化算法(Goat Optimization Algorithm, GOA)求解23个经典函数测试集,MATLAB

一、山羊优化算法 山羊优化算法(Goat Optimization Algorithm, GOA)是2025年提出的一种新型生物启发式元启发式算法,灵感来源于山羊在恶劣和资源有限环境中的适应性行为。该算法旨在通过模拟山羊的觅食策略、移动模式和躲避寄生虫的能力&…...

MySQL数据实时同步至Elasticsearch的高效方案:Java实现+源码解析,一文搞定!

引言:为什么需要实时同步? MySQL擅长事务处理,而Elasticsearch(ES)则专注于搜索与分析。将MySQL数据实时同步到ES,可以充分发挥两者的优势,例如: 构建高性能搜索服务 实时数据分析…...

Spring-事务

Spring 事务 事务的基本概念 🔹 什么是事务? 事务是一组数据库操作,它们作为一个整体,要么全部成功,要么全部回滚。 常见的事务场景: 银行转账(扣款和存款必须同时成功) 订单系统…...

Git系列之git tag和ReleaseMilestone

以下是关于 Git Tag、Release 和 Milestone 的深度融合内容,并补充了关于 Git Tag 的所有命令、详细解释和指令实例,条理清晰,结合实际使用场景和案例。 1. Git Tag 1.1 定义 • Tag 是 Git 中用于标记特定提交(commit&#xf…...

考研机试常见基本题型

1、求100以内的素数 sqrt()函数在cmath头文件中。 #include <iostream> #include <cmath> using namespace std;int main() {int count 0; // 用于统计素数的个数// 遍历 100 到 200 之间的每一个数for (int num 100; num < 200; num) {bool isPrime true…...

Android AudioFlinger(四)—— 揭开PlaybackThread面纱

前言&#xff1a; 继上一篇Android AudioFlinger&#xff08;三&#xff09;—— AndroidAudio Flinger 之设备管理我们知道PlaybackThread继承自Re’fBase&#xff0c; 在被第一次引用的时候就会调用onFirstRef&#xff0c;实现如下&#xff1a; void AudioFlinger::Playbac…...

C语言基础系列【20】内存管理

博主介绍&#xff1a;程序喵大人 35- 资深C/C/Rust/Android/iOS客户端开发10年大厂工作经验嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手《C20高级编程》《C23高级编程》等多本书籍著译者更多原创精品文章&#xff0c;首发gzh&#xff0c;见文末&#x1f447;&#x1f…...

JavaScript基础-递增和递减运算符

在JavaScript编程中&#xff0c;递增&#xff08;&#xff09;和递减&#xff08;--&#xff09;运算符是用于对数值进行加一或减一操作的基础工具。它们简洁且强大&#xff0c;但如果不正确地使用&#xff0c;可能会导致混淆或错误。本文将详细介绍这两种运算符的不同形式及其…...

计算机毕业设计SpringBoot+Vue.js社区医疗综合服务平台(源码+文档+PPT+讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

3.6c语言

#define _CRT_SECURE_NO_WARNINGS #include <math.h> #include <stdio.h> int main() {int sum 0,i,j;for (j 1; j < 1000; j){sum 0;for (i 1; i < j; i){if (j % i 0){sum i;} }if (sum j){printf("%d是完数\n", j);}}return 0; }#de…...

Unity开发——CanvasGroup组件介绍和应用

CanvasGroup是Unity中用于控制UI的透明度、交互性和渲染顺序的组件。 一、常用属性的解释 1、alpha&#xff1a;控制UI的透明度 类型&#xff1a;float&#xff0c;0.0 ~1.0&#xff0c; 其中 0.0 完全透明&#xff0c;1.0 完全不透明。 通过调整alpha值可以实现UI的淡入淡…...

深度学习驱动的跨行业智能化革命:技术突破与实践创新

第一章 深度学习的技术范式演进与核心架构 1.1 从传统机器学习到深度神经网络的跨越 深度学习的核心在于通过多层次非线性变换自动提取数据特征,其发展历程可划分为三个阶段:符号主义时代的规则驱动(1950s-1980s)、连接主义时代的浅层网络(1990s-2000s)以及深度学习时代…...

第一篇:Agent2Agent (A2A) 协议——协作式人工智能的黎明

AI 领域的快速发展正在催生一个新时代&#xff0c;智能代理&#xff08;agents&#xff09;不再是孤立的个体&#xff0c;而是能够像一个数字团队一样协作。然而&#xff0c;当前 AI 生态系统的碎片化阻碍了这一愿景的实现&#xff0c;导致了“AI 巴别塔问题”——不同代理之间…...

ServerTrust 并非唯一

NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】&#xff0c;分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...

聚六亚甲基单胍盐酸盐市场深度解析:现状、挑战与机遇

根据 QYResearch 发布的市场报告显示&#xff0c;全球市场规模预计在 2031 年达到 9848 万美元&#xff0c;2025 - 2031 年期间年复合增长率&#xff08;CAGR&#xff09;为 3.7%。在竞争格局上&#xff0c;市场集中度较高&#xff0c;2024 年全球前十强厂商占据约 74.0% 的市场…...

C++11 constexpr和字面类型:从入门到精通

文章目录 引言一、constexpr的基本概念与使用1.1 constexpr的定义与作用1.2 constexpr变量1.3 constexpr函数1.4 constexpr在类构造函数中的应用1.5 constexpr的优势 二、字面类型的基本概念与使用2.1 字面类型的定义与作用2.2 字面类型的应用场景2.2.1 常量定义2.2.2 模板参数…...

华为OD机考- 简单的自动曝光/平均像素

import java.util.Arrays; import java.util.Scanner;public class DemoTest4 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint[] arr Array…...