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 exishttps://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…...

考研机试常见基本题型
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面纱
前言: 继上一篇Android AudioFlinger(三)—— AndroidAudio Flinger 之设备管理我们知道PlaybackThread继承自Re’fBase, 在被第一次引用的时候就会调用onFirstRef,实现如下: void AudioFlinger::Playbac…...

C语言基础系列【20】内存管理
博主介绍:程序喵大人 35- 资深C/C/Rust/Android/iOS客户端开发10年大厂工作经验嵌入式/人工智能/自动驾驶/音视频/游戏开发入门级选手《C20高级编程》《C23高级编程》等多本书籍著译者更多原创精品文章,首发gzh,见文末👇…...

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

计算机毕业设计SpringBoot+Vue.js社区医疗综合服务平台(源码+文档+PPT+讲解)
温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介: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:控制UI的透明度 类型:float,0.0 ~1.0, 其中 0.0 完全透明,1.0 完全不透明。 通过调整alpha值可以实现UI的淡入淡…...

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

php配置虚拟主机
在PHP中配置虚拟主机,通常是通过Apache或Nginx等Web服务器来进行设置的。下面我将分别介绍如何在Apache和Nginx中配置PHP虚拟主机。 1. Apache 配置虚拟主机 Apache是最常用的Web服务器之一,配置虚拟主机的步骤如下: 步骤一:确保A…...

RESTful API 设计指南
RESTful API 介绍 大佬的总结:RESTful API 设计指南 - 阮一峰的网络日志 json-server github地址 这里介绍一个快速搭建 REST API 服务的工具包 接口测试工具 介绍几个接口测试工具 apipost apifox postman https://www.apipost.cn/ (中文) https://www.apifox…...

在虚拟机上安装Hadoop
以下是在虚拟机上安装Hadoop的一般步骤: 准备工作 - 安装虚拟机软件:如VMware Workstation或VirtualBox等。 - 创建虚拟机:选择合适的操作系统镜像,如Ubuntu或CentOS等Linux发行版,为虚拟机分配足够的CPU、内存和磁盘…...

大白话JavaScript实现一个函数,将字符串中的每个单词首字母大写。
大白话JavaScript实现一个函数,将字符串中的每个单词首字母大写。 答题思路 理解需求:要写一个函数,它能接收一个字符串,然后把这个字符串里每个单词的第一个字母变成大写。分解步骤 拆分单词:一般单词之间是用空格隔…...

【VUE2】第三期——样式冲突、组件通信、异步更新
目录 1 scoped解决样式冲突 2 data写法 3 组件通信 3.1 父子关系 3.1.1 父向子传值 props 3.1.2 子向父传值 $emit 3.2 非父子关系 3.2.1 event bus 事件总线 3.2.2 跨层级共享数据 provide&inject 4 props 4.1 介绍 4.2 props校验完整写法 5 v-model原理 …...

深度学习代码解读——自用
代码来自:GitHub - ChuHan89/WSSS-Tissue 借助了一些人工智能 2_generate_PM.py 功能总结 该代码用于 生成弱监督语义分割(WSSS)所需的伪掩码(Pseudo-Masks),是 Stage2 训练的前置步骤。其核心流程为&a…...

Linux 配置静态 IP
一、简介 在 Linux CentOS 系统中默认动态分配 IP 地址,每次启动虚拟机服务都是不一样的 IP,因此要配置静态 IP 地址避免每次都发生变化,下面将介绍配置静态 IP 的详细步骤。 首先先理解一下动态 IP 和静态 IP 的概念: 动态 IP…...

Oxidized收集H3C交换机网络配置报错,not matching configured prompt (?-mix:^(<CD>)$)
背景:问题如上标题,H3C所有交换机配置的model都是comware 解决方案: 1、找到compare.rb [rootoxidized model]# pwd /usr/local/lib/ruby/gems/3.1.0/gems/oxidized-0.29.1/lib/oxidized/model [rootoxidized model]# ll comware.rb -rw-r--…...

RAG技术深度解析:从基础Agent到复杂推理Deep Search的架构实践
重磅推荐专栏: 《大模型AIGC》 《课程大纲》 《知识星球》 本专栏致力于探索和讨论当今最前沿的技术趋势和应用领域,包括但不限于ChatGPT和Stable Diffusion等。我们将深入研究大型模型的开发和应用,以及与之相关的人工智能生成内容(AIGC)技术。通过深入的技术解析和实践经…...

6.过拟合处理:确保模型泛化能力的实践指南——大模型开发深度学习理论基础
在深度学习开发中,过拟合是一个常见且具有挑战性的问题。当模型在训练集上表现优秀,但在测试集或新数据上性能大幅下降时,就说明模型“记住”了训练数据中的噪声而非学习到泛化规律。本文将从实际开发角度系统讲解如何应对过拟合,…...