自由学习记录(5)

news2024/10/11 11:07:52

git命令行init仓库

mkdir的命令行使用

-pmkdir 命令中的一个选项,表示 "parent",意思是创建所有必要的父目录。如果使用 -p,即使父目录不存在,命令也会自动创建它们,而不会报错。

在 Git 中,git init 是一个非常重要的命令,用于创建一个新的 Git 仓库。它会在你指定的目录下初始化一个新的 Git 仓库,使其能够进行版本控制。

导航到你想要创建仓库的目录。你可以使用 cd 命令来改变当前工作目录。

接着执行 git init 命令: git init

创建位置

  • 创建到当前目录执行 git init 的位置就是你希望创建仓库的目录。在该目录下,你将看到一个名为 .git 的隐藏文件夹。这个文件夹包含了 Git 用于管理版本控制的所有信息

聚合函数的运用

聚合函数常与 GROUP BY 一起使用,以便对特定分组的数据进行聚合计算。

SELECT department_id, AVG(salary)
FROM employees
GROUP BY department_id;

聚合函数可以与 HAVING 子句一起使用,以进一步过滤分组结果。 

SELECT department_id, AVG(salary)
FROM employees
GROUP BY department_id
HAVING AVG(salary) > 5000;

聚合函数与 GROUP BY 的区别:

  • 不使用 GROUP BY
    • 聚合函数会把表中的所有行当作一个整体进行汇总,返回单个值。
  • 使用 GROUP BY
    • 聚合函数会按照指定的分组条件进行汇总,每个组返回一行结果。

 如果你想在不使用 GROUP BY 的情况下显示多行聚合数据,有几种方法可以尝试实现:

使用 GROUP BY 对多个列进行分组时,SQL 会根据这些列的组合生成结果。具体来说,SQL 会将具有相同组合值的行聚集在一起,然后对每个组合执行聚合计算。

组合再分组如果Group by 有多个列

数据库练习

设置整个表变成临时表,括号里全部执行完,再加where约束,这样就可以

 窗口函数的练习

 select id,category,name,price from goods;

 要用聚合函数的话,加over

语法

函数() over (partition by 该表中的字段 order by 通过partition分开后要拿哪个作为排序依据 ASC上往下升|DESC往下降)

语法二

函数() over 窗口名... Window 窗口名 as()

row_number()

主要用途:

  1. 分页:可以通过 ROW_NUMBER() 给结果集编号,然后结合 LIMITOFFSET 实现分页。
  2. 去重:有时候需要根据某些列对重复行进行编号,并删除重复项。
  3. 数据排序:可以根据不同的列来为数据集创建排序后的编号。

示例:

假设有一个员工表 employees,想要给每个员工按照工资从高到低进行排序并编号:

SELECT 
    employee_id,
    first_name,
    salary,
    ROW_NUMBER() OVER (ORDER BY salary DESC) AS row_num
FROM 
    employees;

这个查询会按照工资从高到低给每个员工编号,ROW_NUMBER() 会根据 ORDER BY salary DESC 的规则生成行号。

和其他函数的区别:

  • ROW_NUMBER() 会为每一行生成一个唯一的编号,即使有相同值的行。
  • RANK() 会为相同值的行分配相同的编号,但跳过接下来的编号。
  • DENSE_RANK() 也为相同值的行分配相同的编号,但不会跳过编号。

聚合函数和窗口函数

ROW_NUMBER() 不是一个聚合函数,而是一个窗口函数。窗口函数与聚合函数不同之处在于,窗口函数不会将多行数据聚合成一行,而是为每一行生成相关的结果,例如行号、排名等。

聚合函数(如 SUM()COUNT() 等)会将多行数据合并成单一的值,而 ROW_NUMBER() 不会改变行数,它只是在结果集中为每一行生成一个唯一的行号。

ROW_NUMBER() 一定要配 OVER 使用吗?

  • 是的ROW_NUMBER() 必须配合 OVER 子句使用,因为 OVER 子句定义了窗口函数的“窗口”,即如何分区和排序数据。你可以通过 OVER 子句指定如何排序或者分组结果集,来告诉 ROW_NUMBER() 如何为行生成行号。

可以在外面再加一个 ORDER BY 吗?

  • 可以的,你可以在外层查询中添加 ORDER BY 来对查询结果进行额外排序。ROW_NUMBER() 内部的 ORDER BY 是用来生成行号的,而外部的 ORDER BY 是用来对整个结果集进行排序的

ROW_NUMBER() 在 MySQL 中,即使在 OVER()没有指定 ORDER BY,它也不会报错。确实,它会直接在结果集中基于查询返回的原始顺序加上行号。也就是说,虽然没有指定排序规则,ROW_NUMBER() 依然会为每一行生成递增的行号,但这些行号是根据数据的默认顺序生成的。

SELECT ROW_NUMBER() OVER(ORDER BY population ASC)AS 窗口编号,
id,NAME,POPUlation FROM city 
ORDER BY id;

over里有排序规则之后,窗口函数列全部生成好之后,如果自己没有额外的规定排序规则,会按照窗口函数的rownum排序 

config

多用户环境的背景

  1. 不同用户的配置:在一台计算机上,可能有多个开发者使用 Git。每个开发者可能需要使用不同的用户名和邮箱来进行提交。这时,全局配置 (global) 允许每个用户在自己的环境中设置这些信息,而不影响其他用户。

  2. 系统配置的角色:系统配置 (system) 是由系统管理员设置的,影响所有用户和所有仓库。比如,如果你在一台共享服务器上工作,管理员可能会设置一些系统级别的配置,例如共享的 Git 服务器 URL 或默认的合并工具。

globalsystem 的关系

  • 优先级:当用户在某个仓库中执行 Git 命令时,Git 会首先查找该仓库的 local 配置,如果没有,则查找 global 配置,再查找 system 配置。因此,global 配置不会为每个用户提供多个设置,但它可以为每个用户在自己的账户下设置。

  • 使用场景

    • Global:适用于个人用户设置所有仓库的默认值。例如,一个开发者可以在他们的用户环境中设置自己的用户名和邮箱,这样在所有的 Git 仓库中都会自动应用这些设置。
    • System:适用于需要管理员或系统级别设置的场景,通常不常修改。

系统管理员也可以为整个系统设置一些默认的配置,这些配置将被所有用户共享。

总结

在多用户环境中,global 配置是针对每个用户的,而 system 配置是针对整个系统的。每个用户可以根据自己的需求设置 global 配置,而不必担心影响其他用户的设置。

1. Local Config

  • 作用:设置当前仓库的用户名和邮箱,仅影响该特定的仓库
  • 位置.git/config 文件。

2. Global Config

  • 作用:设置所有仓库的默认用户名和邮箱。对于同一个用户在不同仓库中工作时,使用全局配置可以避免重复设置
  • 位置:用户主目录下的 .gitconfig 文件。

3. System Config

  • 作用:虽然它的作用是影响所有用户和所有仓库,但通常用于管理员或系统级别的设置。一般情况下,普通用户不需要频繁修改系统配置。
  • 位置:系统的 Git 安装目录中的 etc/gitconfig 文件。

System 和 Global 的区别

  • 使用范围system 配置适用于系统中的所有用户,而 global 配置只影响当前用户的所有仓库。因此,虽然它们都可以设置默认值,但 system 是针对整个计算机的,而 global 是针对特定用户的。
  • 优先级:如果在某个仓库中同时存在 localglobalsystem 配置,local 配置的优先级最高,其次是 global,最后是 system

在提交时识别出是谁的命令

1. 配置用户信息

查看你config了些什么git config --global --list

git config --global user.name "Your Name"
git config --global user.email "you@example.com"
//输入你的用户名和邮箱

可以乱填吗?

  • 可以乱填,Git 本身不会限制你填写什么内容。无论你在 user.nameuser.email 中设置的是什么,Git 都会正常工作。这只是影响到你本地的提交记录,远程仓库可能会要求真实的邮箱和身份信息进行协作,但 Git 本身不会强制这些要求。

2. 设置默认编辑器

  • 你可以指定在 Git 操作中使用的默认文本编辑器,例如:

3. 配置别名

  • 可以为常用的 Git 命令设置简短别名,以提高效率:

4. 查看配置

  • 查看当前的 Git 配置,可以使用

5. 全局与局部配置

  • 使用 --global 参数设置的配置会应用到所有仓库,而不使用该参数时,设置只会应用于当前仓库。

Git

可以将已经添加到暂存区的更改取消回来。这个过程称为“从暂存区中移除”,可以使用以下 Git 命令:

1. 从暂存区取消文件

  • 使用 git reset 命令可以将已添加到暂存区的文件移除。以下是基本用法:
git reset <file>

2. 取消所有文件的暂存

  • 如果你想取消所有已暂存的更改,可以使用:
git reset

3. 查看状态

  • 在执行取消操作之前,可以使用 git status 命令查看当前的工作区和暂存区状态。这可以帮助你确认哪些文件已暂存,以及你要取消哪些文件的暂存状态。

4. 恢复到最后一次提交

  • 如果你想要将工作区的修改也丢弃,可以使用:
git checkout -- <file>

为她乐就乐在这今朝

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2204721.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android复杂问题分析工具bugreportz详解

文章目录 bugreportz详细介绍功能与作用使用方法生成详细报告检查进度bugreportz 的优势分析报告 如何分析1. 解压 ZIP 文件2. 分析主要文件2.1 bugreport.txt2.2 logcat.txt2.3 kernel.log / last_kmsg2.4 events.log2.5 traces.txt2.6 dumpstate_board.txt 3. 工具支持4. 重点…

计算机的错误计算(一百一十九)

摘要 用错数解释计算机的错误计算&#xff08;一百一十八&#xff09;中的错误计算。 计算机的错误计算&#xff08;一百一十八&#xff09;给出一个循环迭代 用C语言或Java编程计算&#xff0c;则 均是错误结果。 下面用错数解释其出错原因。 首先&#xff0c;将迭代看作 …

ARM base instruction -- umull

无符号乘法运算 Unsigned Multiply Long multiplies two 32-bit register values, and writes the result to the 64-bit destination register. 将两个32位寄存器值相乘&#xff0c;并将结果写入64位目标寄存器。 64-bit variant UMULL <Xd>, <Wn>, <Wm&g…

springmvc直接访问 上下文路径 302 后路径更改并跳转源码解析

【问题现状】 application.yml 配置如下属性&#xff1a; server:servlet:context-path: /learning直接访问&#xff1a;http://localhost:8888/learning 路径时&#xff0c;会返回302的响应状态&#xff1b;并跳转路径&#xff1a;http://localhost:8888/learning/ (原路径后…

MapReduce工作机制源码解析

目录 1. MapTask工作机制2. ReduceTask工作机制3. ReduceTask并行度决定机制4. MapTask & ReduceTask源码解析 1. MapTask工作机制 MapTask一共分为五个阶段&#xff1a;Read、Map、Collect、溢写、Merge阶段。 在第4步MrAppMaster启动之前都是job的提交流程&#xff0c;…

keras yolo8目标检测

是从coco数据集提取其中的veh_ids[3,6,8,10] labels[car,bus,truck,traffic light]来做目标检测,分别表示汽车,公交车&#xff0c;卡车&#xff0c;交通灯,用的backbone keras_cv.models.YOLOV8Backbone.from_preset( "yolo_v8_m_backbone_coco" ),不用预训练…

构造mex(牛客周赛 Round 59)

题目链接&#xff1b; D-构造mex_牛客周赛 Round 59 (nowcoder.com) 题目描述&#xff1a; 输出和输出描述&#xff1a; 输入样例&#xff1a; 3 6 3 3 7 4 3 6 6 0 输出样例&#xff1a; NO YES 4 0 1 2 YES 1 1 1 1 1 1 分析&#xff1a; 数学思维题&#xff0c;赛后看了一…

Spring Cloud Bus:实现分布式系统中的消息传递与状态同步

在分布式系统中&#xff0c;服务之间的消息传递和状态同步是一个关键需求。Spring Cloud Bus提供了一个轻量级的消息代理连接分布式系统的节点&#xff0c;用于广播状态更改或管理指令。本文将探讨Spring Cloud Bus的功能、使用场景及其在分布式系统中的作用。 Spring Cloud B…

【星汇极客】STM32 HAL库各种模块开发之1.8TFT屏幕

前言 本人是一名嵌入式学习者&#xff0c;在大学期间也参加了不少的竞赛并获奖&#xff0c;包括&#xff1a;江苏省电子设计竞赛省一、睿抗机器人国二、中国高校智能机器人国二、嵌入式设计竞赛国三、光电设计竞赛国三、节能减排竞赛国三等。 暑假的时候参加了太多的比赛&#…

Node.js+Express毕设论文选题最新推荐题目和方向

目录 一、前言 二、毕设选题推荐 三、总结 四、附录&#xff08;手册、官网、资源教程等&#xff09; 1. Node.js 官方资源 2. Express 官方资源 3.安装方法 4 创建示例 一、前言 Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境&#xff0c;它允许开发者使用…

ARM知识点三和串口代码的编写流程

ARM的一些常见问题 ARM 体系结构的主要特点是什么&#xff1f; 精简指令集 (RISC)&#xff1a;ARM 采用 RISC 结构&#xff0c;指令集较小且简单&#xff0c;执行效率高。相比于复杂指令集 (CISC)&#xff0c;RISC 更强调每条指令的执行速度。低功耗设计&#xff1a;ARM 处理…

在北京能不能设计一款可以多屏展示的调度桌

在北京这座科技与创新并蓄的国际大都市&#xff0c;设计一款集高效、智能与多屏展示功能于一体的调度桌&#xff0c;不仅是一个技术挑战&#xff0c;更是对未来工作场景的一次深刻探索与重塑。那么&#xff0c;在北京能不能设计一款可以多屏展示的调度桌呢? 随着信息技术的飞速…

实现MySQL异地多活场景

作为现代化的互联网企业 &#xff0c;最怕的是什么 &#xff1f;是意外&#xff01;由各种意外导致的数据库问题&#xff0c;磁盘问题、网络问题、人员误操作问题等等&#xff0c;这些问题都可能导致数据不可用或者丢失&#xff0c;造成重大损失。 因此&#xff0c;很少会有企…

【吊打面试官系列-微服务面试题】微服务架构有哪些优势?

大家好&#xff0c;我是锋哥。今天分享关于【微服务架构有哪些优势&#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; 微服务架构有哪些优势&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 微服务架构是一种软件架构风格&#xff0c;将单…

“Flash 闪存”基础知识及 “SD NAND Flash”产品测试指南

目录 “Flash 闪存”基础知识及 “SD NAND Flash”产品测试指南一、“FLASH闪存”是什么&#xff1f;1. 简介2. 分类3. 特点4. 虚拟化 二、SD NAND Flash1. 概述2. 特点3. 引脚分配4. 数据传输模式5. SD NAND寄存器6. 通电图7. 参考设计 三、STM32测试例程1. STM32F103读写代码…

CorelDRAW中绘制居民地街道区道路网的绘制

居民地街区道路网的绘制 1.打开软件&#xff0c;点击【文件】→【新建】&#xff0c;建立实验。并导入底图&#xff0c;结果如图1所示&#xff1a; 图1 2.点击【手绘工具】&#xff0c;利用贝塞尔曲线绘制主干道&#xff0c;结果如下图2所示 图2 3.点击【手绘工具】&#xf…

【北京迅为】《STM32MP157开发板嵌入式开发指南》- 第二十七章 交叉编译器的安装和使用

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器&#xff0c;既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构&#xff0c;主频650M、1G内存、8G存储&#xff0c;核心板采用工业级板对板连接器&#xff0c;高可靠&#xff0c;牢固耐…

前后端分离开发YApid

开头先声明以下&#xff0c;这篇主要用于概念的介绍…… 在当今的互联网应用开发中&#xff0c;前后端分离逐渐成为主流的开发模式。相比于传统的前后端混合开发&#xff0c;这种新模式在灵活性、可维护性和团队协作等方面具有显著优势。 前后端混合开发 在前后端混合开发模式…

浏览器内置文字转语音,播报功能Web Speech API - SpeechSynthesisUtterance

SpeechSynthesisUtterance: 让网页说话的艺术 在现代Web开发中&#xff0c;让网页具有语音功能可以极大提升用户体验&#xff0c;特别是对于视障用户或需要多任务处理的场景。SpeechSynthesisUtterance 是 Web Speech API 中的一个接口&#xff0c;它允许开发者创建一个语音合…

初学java练习题【1】

import java.util.Scanner;public class HelloWorld{public static void main(String[] args){Scanner scannernew Scanner(System.in);//输入工资System.out.println("请输入您的工资&#xff1a;");double d1scanner.nextDouble();System.out.println("请输入…