aaa

精典SQL:分组合并列值

只谈情不闲聊 提交于 2020-03-04 20:06:02
分组合并列值 合并列值 原著:邹建 改编:爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 2007 - 12 - 16 广东深圳 表结构,数据如下: id value -- --- ------ 1 aa 1 bb 2 aaa 2 bbb 2 ccc 需要得到结果: id values -- ---- ----------- 1 aa,bb 2 aaa,bbb,ccc 即: group by id, 求 value 的和(字符串相加) 1 . 旧的解决方法(在sql server 2000中只能用函数解决。) -- 1. 创建处理函数 create table tb(id int , value varchar ( 10 )) insert into tb values ( 1 , ' aa ' ) insert into tb values ( 1 , ' bb ' ) insert into tb values ( 2 , ' aaa ' ) insert into tb values ( 2 , ' bbb ' ) insert into tb values ( 2 , ' ccc ' ) go CREATE FUNCTION dbo.f_str( @id int ) RETURNS varchar ( 8000 ) AS BEGIN DECLARE @r varchar (

PAT_Advanced Level_1034 Head of a Gang (C++_dfs_邻接矩阵)

丶灬走出姿态 提交于 2020-03-01 09:32:26
One way that the police finds the head of a gang is to check people’s phone calls. If there is a phone call between A and B, we say that A and B is related. The weight of a relation is defined to be the total time length of all the phone calls made between the two persons. A “Gang” is a cluster of more than 2 persons who are related to each other with total relation weight being greater than a given threshold K. In each gang, the one with maximum total weight is the head. Now given a list of phone calls, you are supposed to find the gangs and the heads. Input Specification: Each input file

硬派云计费正式发布

做~自己de王妃 提交于 2020-03-01 09:12:59
硬派云今日正式发布,使用【硬派云】计费服务,您可以快速的搭建一整套运营平台,让你的运营目标更快实现。 为运营者更提供一站式计费,运营,管理,无论是宽带计费,还是无线 WiFi 运营,VPN 计费都能完美支持。 服务中小微 ISP, 让运营变得更简单,这就是硬派云的服务理念 来源: oschina 链接: https://my.oschina.net/u/81588/blog/744364

硬派网络计费系统镜像安装配置指导

最后都变了- 提交于 2020-03-01 08:36:09
本文将指引您通过镜像来完成硬派网络计费系统的安装配置。 安装准备 最低服务器配置:CPU 1核心,内存1G,硬盘20G,百兆/千兆网卡 下载硬派网络计费系统镜像 镜像下载地址: https://pan.baidu.com/s/1bpgKC5h 镜像基于 openSUSE Leap 42.1 发行版,内置硬派网络计费系统服务,数据库支持Sqlite,Mariadb。 下载地址提供了企业版和社区版镜像,根据你的需要自行选择。 企业版系统用户名密码 toughee/toughee root/toughradius 社区版系统用户名密码 toughradius/toughradius root/toughradius 光盘 ISO 镜像 企业版镜像,内置 Sqlite 数据库,如果你的系统配置较低,可使用该镜像 ToughRADIUS_Enterprise_Edition.x86_64-3.0.0.iso 企业版镜像,内置 Mysql(Mariadb) 数据库 ToughRADIUS_Enterprise_Edition_Mariadb.x86_64-3.0.0.iso ToughRADIUS 社区版镜像,内置 Mariadb ToughRADIUS_Community_Edition.x86_64-2.1.10.iso 请使用光盘刻录工具刻录可引导光盘(非数据光盘)。 硬盘镜像格式

硬派网络计费系统 V3.0 正式发布

混江龙づ霸主 提交于 2020-03-01 08:35:21
基于 ToughRADIUS 开源计费系统构建的商业版计费系统 - 硬派网络计费又迎来了一个重大的里程碑版本 V3.0。 除了一贯对产品的精打细磨,在架构上也致力于追求更合理。这个合理性表现在面对不同的应用场景,总能提供一个最匹配的解决方案。 更好的模块化结构 硬派计费 V3.0 带来了更好的模块化设计,我们不必把所有功能放在一个篮子里,做一个“全家桶”,号称“功能丰富”,这是完全没有必要的,我们不必跟客户解释为什么我们的系统安装完后为什么界面看起来那么简单,功能很少。更多的业务功能全部变成了独立的软件模块,当客户需要时,在功能包升级列表轻点几下鼠标就能轻松实现扩展。无论你是运营上百用户,上千用户,乃至上万,十万用户你总能拥有适合你的功能,而且总能不必看见那些不需要的功能挂在你的系统里。 更合理的迭代升级模式 也许很多人认为作为一个计费管理软件是没有必要经常升级的,但是如果你觉得让你的业务操作员使用起来体验更好,效率更高,让可能出现的问题更快修复,让过时的功能退场,让满足新业务场景的功能更快登场是好事的话,那么快速迭代就变得很重要。不要过于担心升级会带来问题,每一个升级服务包都会经过验证才会上线,同时我们还有“灰度发布”模式,有一群激进的支持者会积极的对新功能进行试用验证改进,当面对全体客户时,这些功能已经变得足够稳定。 硬派计费 V3.0 带来了更方便的功能升级模式

硬派网络计费企业版 2.0 升级 3.0 教程

我怕爱的太早我们不能终老 提交于 2020-03-01 08:24:26
1. 安装环境 操作系统建议:centos7 服务器配置建议: CPU:1核心(或以上),内存:2G(或以上),硬盘:50G(或以上) 不要与生产环境同一个服务器,避免影响生产环境,除非确定执行升级 2. 下载软件 cd /opt curl http://www.toughstruct.net/download/toughee-stable-linux-x64.tar.xz -o /opt/toughee-linux-x64.tar.xz 3. 部署系统 cd /opt tar xvf toughee-linux-x64.tar.xz 解压缩得到 /opt/toughee 目录 注意: /opt/toughee 是默认目录,如果要修改此目录,必须同时修改 Makefile 和 radiusctl, toughee.conf 文件中的对应路径。 执行 make all 安装 cd /opt/toughee make all 首次使用还需初始化数据库,根据实际情况修改 /opt/toughee/etc/toughee.json 的数据库配置,默认采用 sqlite 数据库。 /opt/toughee/radiusctl initdb -c /opt/toughee/etc/toughee.json 4. 运行系统 service toughee start 所有日志在 /var

sed常用模板整理

北城余情 提交于 2020-02-27 09:24:18
sed可以按照指令或脚本编辑文本的linux工具,文本处理功能非常强大,本文总结一些工作中常用的sed模板,方便大家使用 替换 1. 替换文件中所有的 aaa 到 bbb sed -i 's/aaa/bbb/g' /path/to/file 2. 找到文件的修改日期 stat deploy | sed -n '/^Modify.*/p' # 找到 stat deploy | sed -n '/^Modify.*/p' | grep -Eo "....-..-.. ..:..:.." # 提取出修改起义 2. 找到 aaa 参数,并设置为off sed -i '/^aaa/s/on/off/' /path/to/file 可以配合grep使用,完成自动设置参数 have_aaa=$(grep aaa /path/to/file | sed '/^#.*/d') # 寻找是否以存在aaa参数 if [ ! -z $have_aaa ];then # 如果存在 sed -i '/^aaa/s/on/off/' /path/to/file # 则修改为off else # 如果不存在 sed -i '/ccc/a aaa off' /path/to/file # 则在ccc参数下新增 aaa off # sed -i '$a/aaa off' /path/to/file # 则在最后新增

JavaScript学习笔记 -- ES6学习(三) 变量的解构赋值

你离开我真会死。 提交于 2020-02-25 12:41:52
1.解构赋值的定义 在ES6中,允许按照一定模式,从数组和对象中提取值(所谓解构),然后对变量进行赋值。 var a = 1; var b = 2; var c = 3; //等价于 var [a, b, c] = [1, 2, 3]; 如果解构不成功,对应的变量就会赋值undefined. let [x, y, ...z] = ['a']; x // "a" y // undefined z // [] 另一种情况是不完全解构,即等号左边的模式,只匹配一部分的等号右边的数组。这种情况下,解构依然可以成功。 let [x, y] = [1, 2, 3]; x // 1 y // 2 let [a, [b], d] = [1, [2, 3], 4]; a // 1 b // 2 d // 4 如果等号的右边不是数组(或者严格地说,不是可遍历的结构),那么将会报错。 // 报错 let [foo] = 1; let [foo] = false; let [foo] = NaN; let [foo] = undefined; let [foo] = null; let [foo] = {}; 只要某种数据结构具有Iterator接口,都可以采用数组形式的解构赋值。 function* fibs() { var a = 0; var b = 1; while (true) { yield

[JZOJ4769]【GDOI2017模拟9.9】graph

亡梦爱人 提交于 2020-02-24 16:25:07
题目 描述 题目大意很明确了,所以不说…… 思考历程 一看见这题,咦,这就是传说中的动态图吗? 普通的动态图是维护连通性,这题是维护它是否是二分图,换言之就是维护它是否有奇环。 好像很复杂的样子。 想用LCT搞一搞,但是搞了很久终究搞不出来。 如果这道题全部都是加入就好了,但对于删除,好像要影响很多东西…… 想了很久终将放弃。 正解 现在主要的正解大体分为两种: 第一种方法是使用 线段树 。 对于每一条边,预处理除它们的加入和删除时间。 可以把它们存在的时间看作时间轴上的一段区间。 然后就有个很强大的做法:将这条边塞入线段树中,也就是代表这段区间的线段树上 O ( lg ⁡ m ) O(\lg m) O ( l g m ) 个节点上。 将所有的边加进去,然后顺序遍历。对于每个节点,进入它时,将挂在它上面的所有边加入某个数据结构中;从它回到父亲时,将这些边从那个数据结构中删除。 这个数据结构用来维护它是否是二分图,我们可以用 可持久化并查集 来实现。 在线段树上一直往下走的过程中,可以通过当前的加入操作来判断它是否出现了奇环。如果没有出现,继续做下去;如果出现了,那么这个节点代表的区间的答案都是 NO ,直接记下,下面的就不用做了,直接回去。 显然每条边在线段树上挂的节点有 O ( lg ⁡ m ) O(\lg m) O ( l g m ) 个,每次对可持久化并查集的操作为 O (

Codeforces Round #619 (Div. 2)_A. Three Strings(C++_模拟)

删除回忆录丶 提交于 2020-02-16 10:04:27
You are given three strings a a a , b b b and c c c of the same length n n n . The strings consist of lowercase English letters only. The i i i -th letter of a a a is a i a_i a i ​ , the i i i -th letter of b b b is b i b_i b i ​ , the i i i -th letter of c c c is c i c_i c i ​ . For every i i i ( 1 ≤ i ≤ n 1 \leq i \leq n 1 ≤ i ≤ n ) you must swap (i.e. exchange) c i c_i c i ​ with either a i a_i a i ​ or b i b_i b i ​ . So in total you’ll perform exactly n n n swap operations, each of them either c i ↔ a i c_i \leftrightarrow a_i c i ​ ↔ a i ​ or c i ↔ b i c_i \leftrightarrow b_i c i ​ ↔ b i