SQL UNION 和 UNION ALL 用法

一、概述 union 和 union all 都用于合并多个查询的结果,用法为:

两者的区别是 union all 中会有重复记录,而 union 中没有。 二、示例 创建两张表 ch ... 阅读更多

Git 学习笔记 (三):使用 add 和 commit 完成第一次提交

一、 Git 提交代码的流程 git 中一个完整的代码提交流程为: 在工作区写好要提交的代码文件,然后使用 git add 命令把文件到寄存区,确认代码后使用 git commit 提交到版本库。 二、提交代码到寄存区 git add 用于把工作区的文件提交到寄存区中,后面跟上需要提交的文件,例如 git add a ... 阅读更多

C++中引用的基本用法

一、基本用法 创建一个对象的引用只需把声明符写成&val 的形式即可:

创建引用时,编译器并不是把拷贝一个值赋给引用,而是把引用和初始的对象绑定在一起,相当于只是给对象起了一个别名。可以通过引用来操作初始化对象,并且通过引用来操 ... 阅读更多

Golang 判断文件是否存在及递归创建文件夹

一、判断文件或文件夹是否存在 golang 判断文件或者文件夹是否存在可以通过 os.stat() 方法和 os.IsExist() 方法来判断:

二、递归创建文件夹 递归文件夹用到 os.MkdirAll() 方法: [crayon-694af8 ... 阅读更多

redis 中的发布和订阅

一、发布和订阅

除了任务队列以外,redis 还有一种基于 「发布/订阅」 模式的消息传递,使得客户端可以订阅某个频道,当频道有消息产生时,会把消息传递到所有的订阅者。和列表不一样的是,发布和订阅可以是一对多的关系,即同一个消息可以同时传递到多个客户端 (订阅者) 。而列表只能允许一个客户端接收一个消息。

订阅和退订的命令是 PUBLISH/SUBSCRIBEPUBLISH 是向频道发送消息,SUBSCRIBE 是订阅频道。

1.1 发布

往指定频道发布消息的操作:

消息发送成功后,将会返回一个整数,表示收到这条消息的订阅者数量,如果没有任何客户端订阅频道,返回 0 。

一个要注意的问题是消息发布后不会被持久化,如果当前没有订阅者订阅频道,后续再订阅也不会收到订阅前的消息。

阅读更多

凉拌黄瓜

经历了昨天的凉拌皮蛋之后,今天又鼓捣了一个凉拌黄瓜。 和昨天的配料不同,昨天用的醋+花生油,不是很喜欢吃醋,所以今天改用的生抽+芝麻油。 事实证明,芝麻油比花生油更香!