- Redis第五讲:详解 Redis 中 BigKey、HotKey 的发现与处理
程序员 jet_qi
深入理解数据库redis数据库缓存大key热点key
简介:在Redis的使用过程中,我们经常会遇到BigKey(下文将其称为“大key”)及HotKey(下文将其称为“热key”)。大Key与热Key如果未能及时发现并进行处理,很可能会使服务性能下降、用户体验变差,甚至引发大面积故障。本文详解Redis中BigKey、HotKey的发现与处理。文章目录1、大Key与热Key的定义1.1、什么是大Key1.2、什么是热Key2、大Key与热Key带来
- redission 实现滑动窗口(注解)推荐
结构目录相关代码org.redissonredisson-spring-boot-starter3.17.0packageorg.example.redission.config;importorg.redisson.Redisson;importorg.redisson.api.RedissonClient;importorg.redisson.config.Config;importorg.s
- 如何发现Redis中的bigkey?
代码中の快捷键
redis数据库缓存
如何发现Redis中的bigkey?我主要用这几个方法:redis-cli--bigkeys(最常用,最省事):直接在命令行敲这个命令:redis-cli-h你的redis地址-p端口--bigkeys作用:它会自动扫描整个数据库。结果:告诉你每种数据类型(String,Hash,List,Set,ZSet)里最大的那个key是什么,有多大(比如String多大,List有多少元素)。优点:简单、
- Redis简介之它是啥
财神爷首席大弟子
Redisredis数据库缓存
什么是RedisRedis是一个基于BSD协议的开源数据库,是一个以键值对形式的存储系统Redis常用于消息队列,缓存,会话存储等场景Redis是使用C语言编写使用许可证:BSD许可证是一个开源的宽松的软件许可协议Redis优点性能极高Redis是以高性能著称,可全天24小时达到每秒十万次的读写操作数据类型丰富哈希字符串集合列表有序集合原子性操作原子性操作是指,程序要么不执行,要嘛执行完毕,这种对
- Windows下的redis
517
redis数据库缓存
1:在配置path后:redis-cli默认16个数据库2然后再验证set和get命令,如果一切正常便安装部署成功。一、键(Key)的增删改查操作命令示例说明增SETkeyvalueSETusername"john"设置字符串键值删DELkeyDELusername删除键(可多键:DELk1k2)改SETkeynew_valueSETusername"mike"覆盖原有值查GETke
- redis基础(1)
在Redis中,设置键值并同时指定以秒为单位的过期时间,有以下两种常用方式:方法1:使用SET命令+EX选项(推荐)SETkeyvalueEXseconds说明:在设置键值对的同时直接指定过期时间(秒)SETuser:token"abc123"EX3600#设置token并设置1小时后过期(3600秒)方法2:使用SETEX命令SETEXkeysecondsvalue说明:专用于设置带过期时间的字
- redis锁java实现
brave_zhao
redisjava数据库
以下是几种常见的Redis分布式锁的Java实现方式:1.基于SETNX命令的实现SETNX命令(对应Java中的setIfAbsent方法)是实现Redis分布式锁的基础。以下是实现代码:importredis.clients.jedis.Jedis;publicclassRedisLock{privateJedisjedis;publicRedisLock(Jedisjedis){this.j
- 从面试懵逼到通透掌握:分布式锁原理全解(附Redisson与Redlock机制剖析)
爱骑行的Coder
数据库redisjava基础面试分布式javaredis后端
从面试懵逼到通透掌握:分布式锁原理全解(附Redisson与Redlock机制剖)你是不是也有这样的经历?简历上写着“精通Java,精通Redis,熟悉高并发场景”,结果一面下来,分布式锁怎么实现?Redisson是怎么加锁的?看门狗机制了解吗?锁丢失你知道怎么解决吗?全程“啊能能”,频频磕巴。本文不整虚的,带你从0到1,一步步真正搞懂分布式锁的原理与落地实践,面试高频,架构核心,不能不会。一、什
- Spring Boot使用Redis常用场景
蹦跑的蜗牛
springbootredis后端
SpringBoot使用Redis常用场景一、概述:Redis是什么?为什么要用它?Redis(RemoteDictionaryServer)是一个内存中的数据存储系统(类似一个“超级大字典”),它能存各种类型的数据(字符串、列表、哈希等),而且读写速度极快(因为数据存在内存里)。简单说,Redis就像电脑的“缓存抽屉”:当你的程序需要频繁读取或修改某些数据时(比如用户登录信息、商品销量),直接从
- 使用 Docker 搭建 Python(Flask/CUDA AI)开发环境——AI教你学Docker
使用Docker搭建Python(Flask/CUDAAI)开发环境及常用中间件配置详解本指南适用于用Docker快速搭建Python(FlaskWeb应用或包含CUDA的AI开发环境)开发环境,并集成常用中间件服务如MySQL、Redis、Kafka。适合个人开发、本地测试和小团队协作。一、项目目录结构建议project-root/├──app/#Python应用源码目录│├──Dockerfi
- Redis 性能优化实战:管道、事务、缓存与连接管理全解析
佑瞻
数据库与知识图谱缓存redis性能优化
在日常开发中,我们常常会遇到Redis操作的性能瓶颈:频繁的命令交互导致网络开销激增,并发更新时的数据一致性难以保证,海量数据遍历引发的阻塞问题……其实,Redis早已为这些场景准备了“利器”。今天我们就深入探讨Redis的管道、事务、扫描迭代、客户端缓存以及连接管理技巧,用实战代码带你玩转性能优化。一、管道(Pipelines):批量执行命令,减少网络往返当我们需要连续执行多个Redis命令时,
- Redis OM for Python 实战:用 Flask 构建 Redis 文档型 API
在日常开发中,我们使用Redis时常常会遇到这样的场景:需要存储复杂的结构化数据(比如用户信息、商品详情),还要支持灵活的查询(按年龄筛选、按技能搜索)。直接用Redis的基础命令处理JSON数据不仅繁琐,查询起来更是头疼。而RedisOMforPython的出现,正好解决了这些问题——它让我们能用Python类轻松建模,用简洁的代码实现CRUD和复杂查询。今天我们就结合Flask框架,手把手教你
- redis mysql主从分离_Redis(5)-----初识Redis-----主从复制.读写分离,主从切换(哨兵机制)(示例代码)...
算法艺术家
redismysql主从分离
当数据量变得庞大的时候,读写分离还是很有必要的。同时避免一个redis服务宕机,导致应用宕机的情况,我们启用sentinel(哨兵)服务,实现主从切换的功能。https://www.cnblogs.com/jaycekon/p/6237562.html一,主从分离(读写分离,主从复制)首先我们默认已经安装了redis,然后复制master,slave1,slave2三个redis的文件。并把red
- 【网络与爬虫 24】爬虫数据存储方案:从文件到数据库的全面指南
莫比乌斯@卷
技术技巧#网络与爬虫网络爬虫数据库
【网络与爬虫24】爬虫数据存储方案:从文件到数据库的全面指南关键词:爬虫数据存储、CSV、JSON、Excel、SQLite、MySQL、MongoDB、Redis、数据持久化、数据管理摘要:本文全面介绍爬虫数据存储的各种方案,从简单的文本文件、CSV、JSON到Excel表格,再到SQLite、MySQL等关系型数据库,以及MongoDB、Redis等NoSQL数据库。通过对比分析不同存储方式的
- 深入Redis:核心的缓存
Redis最主要的用途,主要有三个方面:存储数据、缓存、消息队列。其中,缓存是Redis最常用的场景。Redis使用内存作为硬盘的缓存。把用户集中访问的20%数据放到缓存中去,可以应对80%的请求。数据库是非常重要的组件,但是mysql的速度又比较慢,所以我们用Redis来作为mysql的缓存。为什么说关系型数据库性能不高?数据库把数据存储在硬盘上,硬盘的IO速度并不快。尤其是随机访问。如果查询不
- Spring RedisTemplate中文乱码
NO爷
JavaSpringBootRedisJedis乱码
Redis客户端中文乱码网上非常常见的乱码,百度一搜大部分都是这种情况。如果不是此种情况请看下一节。redis-cliredis127.0.0.1:6379>set'name''中文'OKredis127.0.0.1:6379>get'name'"\xd6\xd0\xce\xc4"redis127.0.0.1:6379>客户端查看乱码,这个情况我们只要将修改客户端命令行就可以。redis-cli-
- 掌握 Spring Data Redis,提升后端开发效率
掌握SpringDataRedis,提升后端开发效率关键词:SpringDataRedis、后端开发、缓存、数据持久化、效率提升摘要:本文旨在深入探讨SpringDataRedis这一强大的工具,帮助后端开发者更好地掌握它以提升开发效率。首先介绍SpringDataRedis的背景知识,包括其目的、适用读者等。接着详细阐述核心概念与联系,分析核心算法原理并给出具体操作步骤,通过数学模型和公式加深理
- Redis核心用法与通用命令全解析
Pota-to成长日记
Redisredis数据库缓存
Redis核心用法与通用命令全解析——从基础操作到高效实践一、Redis基础知识速览Redis是一款高性能的键值存储系统,支持String、Hash、List、Set、SortedSet五种核心数据结构,以及Bitmaps、HyperLogLog、Streams等扩展类型。其单线程模型和内存存储特性使其在缓存、计数器、消息队列等场景中表现出色。二、核心命令详解(附实用示例)1.通用键操作命令(1)
- Spring AI 本地 RAG 实战:用Redis、Chroma搭建离线知识问答系统
勤奋的知更鸟
JavaAI大模型AI工具spring人工智能RAG
本文将用Ollama+Qwen-7B搭建离线知识问答系统(含Redis/Chroma向量库)目录前言环境搭建项目结构设计Maven依赖pom.xmlapplication.yml配置(Redis+Ollama)Redis向量库实战OllamaConfig.javaRagService.javaRagController.javaRagApplication.java测试样例RAG增强Maven依赖
- RabbitMQ 高级特性之事务
Bug退退退123
RabbirMQ常见面试题rabbitmq分布式javaspring
1.简介与MySQL、Redis一样,RabbitMQ也支持事务。事务中的消息,要么全都发送成功,要么全部发送失败,不会出现一部分成功一部分失败的情况。2.使用事务发送消息spring中使用RabbitMQ开启事务需要两步:第一步:配置RabbitTemplate使用下面这段代码,将RabbitTemplate的transactional设置为true:@Bean("transRabbitTemp
- Lua嵌入式爬虫实现步骤
q56731523
lua爬虫开发语言r语言
在Lua中实现嵌入式爬虫,通俗点说就是指在一个宿主程序(如Nginx/OpenResty、Redis等)中使用Lua脚本来完成网络爬取任务。由于Lua本身的标准库并不包含网络请求功能,因此我们需要依赖宿主环境提供的网络库。在Lua中实现嵌入式爬虫通常指在资源受限环境(如OpenResty/Nginx、Redis、IoT设备)中运行的轻量级网络爬取工具。以下是关键实现方案和示例:核心方案:基于Ope
- Docker:安装命令笔记
博风
#Linux中间件docker笔记容器
目录零、安装:略一、镜像1.0、获取镜像:1.1、查看镜像:1.2、删除镜像:二、容器2.0、创建并启动容器2.1、tomcat和jdk9的“创建并启动容器”的命令2.2、容器操作2.3、容器日志操作零、安装:略略一、镜像1.0、获取镜像:dockerpulltomcat:9.0.102-jdk8-correttodockerpullredis:7.4.2dockerpullopenjdk:91.
- Scrapy分布式爬虫进阶:动态代理与并发优化实战
Kelaru
pythonprojectscrapy分布式爬虫python
写在前面。。。继“动态网页”“登录网站”“经验总结”“分布式爬虫”后,本篇献上Scrapy-Redis进阶实战,基于QuotestoScrape,聚焦动态代理池和并发优化,代码简洁,经验点燃智慧,适合新手到老兵。准备工作1.环境配置Python:3.8+(推荐3.10)。依赖安装:pipinstallscrapy==2.11.2scrapy-redis==0.7.4redis==5.0.8requ
- Redis中BigKey的隐患
雾缘枯
redis缓存数据库
一、什么是BigKey?1、BigKey的定义BigKey是指那些在Redis中存储了大量数据,或者其序列化后占用大量内存空间的键。它不仅仅是一个值很长的字符串,更常见的是指那些包含巨多元素的集合类型(如Hash、List、Set、ZSet)。想象一下:一个String类型的Key,存储了一个几MB甚至几十MB的JSON字符串。一个List类型的Key,里面有几百万个元素,就像一个永无止境的日志队
- Redis 客户端连接
wjs2024
开发语言
Redis客户端连接引言Redis作为一款高性能的内存数据库,在当今的互联网应用中扮演着重要的角色。Redis提供了多种客户端连接方式,以满足不同场景下的使用需求。本文将详细介绍Redis客户端连接的相关知识,包括连接协议、连接方式、连接配置以及连接管理等方面。Redis连接协议Redis支持多种连接协议,包括TCP/IP、Unix域套接字和SSL/TLS。以下是这些协议的简要介绍:1.TCP/I
- Redis 分布式锁实现与实践
佑瞻
数据库与知识图谱redis分布式数据库
在分布式系统架构中,多个独立进程对共享资源的并发访问控制是常见需求,分布式锁作为解决这一问题的关键技术,在缓存更新、任务调度、库存管理等场景中发挥着重要作用。本文将从基础原理出发,详细阐述基于Redis的分布式锁实现方案,包括单实例模式与Redlock算法,并探讨其在实际应用中的关键考量。分布式锁核心概念分布式锁是一种跨进程、跨机器的同步机制,用于保证多个分布式节点对共享资源的互斥访问。一个可靠的
- java 同步redis到mysql_Yii2 redis同步数据到mysql
兰艳知己
java同步redis到mysql
将redis数据写入mysql中:本次案例讲解将如何将商城中商品浏览次数通过缓存记录并写入mysql中具体的redis安装过程暂且就省略了.....一、安装redis插件|配置rediscomposerrequireyiisoft/yii2-redis找到common的config文件,在components下加入redis配置参数'redis'=>['class'=>'yii\redis\Con
- redis做同步或异步队列
瞧着不像好人呐
redisredisjava数据库
redis实现队列主要是使用数据结构中的list,相当于Java中的ArrayList因为它是按照塞入顺序排序的结构,我们就可以按照左边塞入,右边取出的方式来实现先入先出的队列需求。publicvoidrpush(Stringkey,Stringvalue){Jedisjedis=null;try{jedis=jedisPool.getResource();jedis.rpush(key,valu
- Redis 实现同步锁
1、技术方案1.1、redis的基本命令1)SETNX命令(SETifNoteXists)语法:SETNXkeyvalue功能:当且仅当key不存在,将key的值设为value,并返回1;若给定的key已经存在,则SETNX不做任何动作,并返回0。2)expire命令语法:expireKEYseconds功能:设置key的过期时间。如果key已过期,将会被自动删除。3)DEL命令语法:DELkey
- Redis队列
关于「把Redis当作队列来用是否合适」的问题。有些人表示赞成,他们认为Redis很轻量,用作队列很方便。也些人则反对,认为Redis会「丢」数据,最好还是用「专业」的队列中间件更稳妥。从最简单的开始:List队列首先,我们先从最简单的场景开始讲起。如果你的业务需求足够简单,想把Redis当作队列来使用,肯定最先想到的就是使用List这个数据类型。因为List底层的实现就是一个「链表」,在头部和尾
- java线程的无限循环和退出
3213213333332132
java
最近想写一个游戏,然后碰到有关线程的问题,网上查了好多资料都没满足。
突然想起了前段时间看的有关线程的视频,于是信手拈来写了一个线程的代码片段。
希望帮助刚学java线程的童鞋
package thread;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date
- tomcat 容器
BlueSkator
tomcatWebservlet
Tomcat的组成部分 1、server
A Server element represents the entire Catalina servlet container. (Singleton) 2、service
service包括多个connector以及一个engine,其职责为处理由connector获得的客户请求。
3、connector
一个connector
- php递归,静态变量,匿名函数使用
dcj3sjt126com
PHP递归函数匿名函数静态变量引用传参
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Current To-Do List</title>
</head>
<body>
- 属性颜色字体变化
周华华
JavaScript
function changSize(className){
var diva=byId("fot")
diva.className=className;
}
</script>
<style type="text/css">
.max{
background: #900;
color:#039;
- 将properties内容放置到map中
g21121
properties
代码比较简单:
private static Map<Object, Object> map;
private static Properties p;
static {
//读取properties文件
InputStream is = XXX.class.getClassLoader().getResourceAsStream("xxx.properti
- [简单]拼接字符串
53873039oycg
字符串
工作中遇到需要从Map里面取值拼接字符串的情况,自己写了个,不是很好,欢迎提出更优雅的写法,代码如下:
import java.util.HashMap;
import java.uti
- Struts2学习
云端月影
最近开始关注struts2的新特性,从这个版本开始,Struts开始使用convention-plugin代替codebehind-plugin来实现struts的零配置。
配置文件精简了,的确是简便了开发过程,但是,我们熟悉的配置突然disappear了,真是一下很不适应。跟着潮流走吧,看看该怎样来搞定convention-plugin。
使用Convention插件,你需要将其JAR文件放
- Java新手入门的30个基本概念二
aijuans
java新手java 入门
基本概念: 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。 2.OOP中最重要的思想是类,类是模板是蓝图,
- jedis 简单使用
antlove
javarediscachecommandjedis
jedis.RedisOperationCollection.java
package jedis;
import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;
import java.util.List;
import java.util.Map;
import java.util.Set;
pub
- PL/SQL的函数和包体的基础
百合不是茶
PL/SQL编程函数包体显示包的具体数据包
由于明天举要上课,所以刚刚将代码敲了一遍PL/SQL的函数和包体的实现(单例模式过几天好好的总结下再发出来);以便明天能更好的学习PL/SQL的循环,今天太累了,所以早点睡觉,明天继续PL/SQL总有一天我会将你永远的记载在心里,,,
函数;
函数:PL/SQL中的函数相当于java中的方法;函数有返回值
定义函数的
--输入姓名找到该姓名的年薪
create or re
- Mockito(二)--实例篇
bijian1013
持续集成mockito单元测试
学习了基本知识后,就可以实战了,Mockito的实际使用还是比较麻烦的。因为在实际使用中,最常遇到的就是需要模拟第三方类库的行为。
比如现在有一个类FTPFileTransfer,实现了向FTP传输文件的功能。这个类中使用了a
- 精通Oracle10编程SQL(7)编写控制结构
bijian1013
oracle数据库plsql
/*
*编写控制结构
*/
--条件分支语句
--简单条件判断
DECLARE
v_sal NUMBER(6,2);
BEGIN
select sal into v_sal from emp
where lower(ename)=lower('&name');
if v_sal<2000 then
update emp set
- 【Log4j二】Log4j属性文件配置详解
bit1129
log4j
如下是一个log4j.properties的配置
log4j.rootCategory=INFO, stdout , R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appe
- java集合排序笔记
白糖_
java
public class CollectionDemo implements Serializable,Comparable<CollectionDemo>{
private static final long serialVersionUID = -2958090810811192128L;
private int id;
private String nam
- java导致linux负载过高的定位方法
ronin47
定位java进程ID
可以使用top或ps -ef |grep java
![图片描述][1]
根据进程ID找到最消耗资源的java pid
比如第一步找到的进程ID为5431
执行
top -p 5431 -H
![图片描述][2]
打印java栈信息
$ jstack -l 5431 > 5431.log
在栈信息中定位具体问题
将消耗资源的Java PID转
- 给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
bylijinnan
函数
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class RandNFromRand5 {
/**
题目:给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
解法1:
f(k) = (x0-1)*5^0+(x1-
- PL/SQL Developer保存布局
Kai_Ge
近日由于项目需要,数据库从DB2迁移到ORCAL,因此数据库连接客户端选择了PL/SQL Developer。由于软件运用不熟悉,造成了很多麻烦,最主要的就是进入后,左边列表有很多选项,自己删除了一些选项卡,布局很满意了,下次进入后又恢复了以前的布局,很是苦恼。在众多PL/SQL Developer使用技巧中找到如下这段:
&n
- [未来战士计划]超能查派[剧透,慎入]
comsci
计划
非常好看,超能查派,这部电影......为我们这些热爱人工智能的工程技术人员提供一些参考意见和思想........
虽然电影里面的人物形象不是非常的可爱....但是非常的贴近现实生活....
&nbs
- Google Map API V2
dai_lm
google map
以后如果要开发包含google map的程序就更麻烦咯
http://www.cnblogs.com/mengdd/archive/2013/01/01/2841390.html
找到篇不错的文章,大家可以参考一下
http://blog.sina.com.cn/s/blog_c2839d410101jahv.html
1. 创建Android工程
由于v2的key需要G
- java数据计算层的几种解决方法2
datamachine
javasql集算器
2、SQL
SQL/SP/JDBC在这里属于一类,这是老牌的数据计算层,性能和灵活性是它的优势。但随着新情况的不断出现,单纯用SQL已经难以满足需求,比如: JAVA开发规模的扩大,数据量的剧增,复杂计算问题的涌现。虽然SQL得高分的指标不多,但都是权重最高的。
成熟度:5星。最成熟的。
- Linux下Telnet的安装与运行
dcj3sjt126com
linuxtelnet
Linux下Telnet的安装与运行 linux默认是使用SSH服务的 而不安装telnet服务 如果要使用telnet 就必须先安装相应的软件包 即使安装了软件包 默认的设置telnet 服务也是不运行的 需要手工进行设置 如果是redhat9,则在第三张光盘中找到 telnet-server-0.17-25.i386.rpm
- PHP中钩子函数的实现与认识
dcj3sjt126com
PHP
假如有这么一段程序:
function fun(){
fun1();
fun2();
}
首先程序执行完fun1()之后执行fun2()然后fun()结束。
但是,假如我们想对函数做一些变化。比如说,fun是一个解析函数,我们希望后期可以提供丰富的解析函数,而究竟用哪个函数解析,我们希望在配置文件中配置。这个时候就可以发挥钩子的力量了。
我们可以在fu
- EOS中的WorkSpace密码修改
蕃薯耀
修改WorkSpace密码
EOS中BPS的WorkSpace密码修改
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
- SpringMVC4零配置--SpringSecurity相关配置【SpringSecurityConfig】
hanqunfeng
SpringSecurity
SpringSecurity的配置相对来说有些复杂,如果是完整的bean配置,则需要配置大量的bean,所以xml配置时使用了命名空间来简化配置,同样,spring为我们提供了一个抽象类WebSecurityConfigurerAdapter和一个注解@EnableWebMvcSecurity,达到同样减少bean配置的目的,如下:
applicationContex
- ie 9 kendo ui中ajax跨域的问题
jackyrong
AJAX跨域
这两天遇到个问题,kendo ui的datagrid,根据json去读取数据,然后前端通过kendo ui的datagrid去渲染,但很奇怪的是,在ie 10,ie 11,chrome,firefox等浏览器中,同样的程序,
浏览起来是没问题的,但把应用放到公网上的一台服务器,
却发现如下情况:
1) ie 9下,不能出现任何数据,但用IE 9浏览器浏览本机的应用,却没任何问题
- 不要让别人笑你不能成为程序员
lampcy
编程程序员
在经历六个月的编程集训之后,我刚刚完成了我的第一次一对一的编码评估。但是事情并没有如我所想的那般顺利。
说实话,我感觉我的脑细胞像被轰炸过一样。
手慢慢地离开键盘,心里很压抑。不禁默默祈祷:一切都会进展顺利的,对吧?至少有些地方我的回答应该是没有遗漏的,是不是?
难道我选择编程真的是一个巨大的错误吗——我真的永远也成不了程序员吗?
我需要一点点安慰。在自我怀疑,不安全感和脆弱等等像龙卷风一
- 马皇后的贤德
nannan408
马皇后不怕朱元璋的坏脾气,并敢理直气壮地吹耳边风。众所周知,朱元璋不喜欢女人干政,他认为“后妃虽母仪天下,然不可使干政事”,因为“宠之太过,则骄恣犯分,上下失序”,因此还特地命人纂述《女诫》,以示警诫。但马皇后是个例外。
有一次,马皇后问朱元璋道:“如今天下老百姓安居乐业了吗?”朱元璋不高兴地回答:“这不是你应该问的。”马皇后振振有词地回敬道:“陛下是天下之父,
- 选择某个属性值最大的那条记录(不仅仅包含指定属性,而是想要什么属性都可以)
Rainbow702
sqlgroup by最大值max最大的那条记录
好久好久不写SQL了,技能退化严重啊!!!
直入主题:
比如我有一张表,file_info,
它有两个属性(但实际不只,我这里只是作说明用):
file_code, file_version
同一个code可能对应多个version
现在,我想针对每一个code,取得它相关的记录中,version 值 最大的那条记录,
SQL如下:
select
*
- VBScript脚本语言
tntxia
VBScript
VBScript 是基于VB的脚本语言。主要用于Asp和Excel的编程。
VB家族语言简介
Visual Basic 6.0
源于BASIC语言。
由微软公司开发的包含协助开发环境的事
- java中枚举类型的使用
xiao1zhao2
javaenum枚举1.5新特性
枚举类型是j2se在1.5引入的新的类型,通过关键字enum来定义,常用来存储一些常量.
1.定义一个简单的枚举类型
public enum Sex {
MAN,
WOMAN
}
枚举类型本质是类,编译此段代码会生成.class文件.通过Sex.MAN来访问Sex中的成员,其返回值是Sex类型.
2.常用方法
静态的values()方