小编Kur*_*aze的帖子

463
推荐指数
18
解决办法
36万
查看次数

登录建议查询

我想建议登录用户,如果他们的第一个选择已经采取.假设,用户想要注册为"超人".现场已经有一些超人了.登录以"Superman01","Superman02"等形式建议.所以,脚本必须:

  • 检查db中的"超人"登录
  • 如果已经使用过,请附加'01'登录并在DB中检查它
  • 如果已使用,则递增计数器('02'),追加登录并再次检查
  • 找到未声明的登录信息后,将其返回给用户

我现在不喜欢这个模式的是它需要多个MySQL数据库请求.有没有办法一次性获得第一次无人认领的登录?也许与存储过程或聪明的SQL查询?

UPD:提供赏金

php mysql username

12
推荐指数
2
解决办法
1168
查看次数

SQL魔术 - 查询不应该花费15个小时,但确实如此

好的,所以我有一个非常可怕的MySQL表(900k记录,总共180 MB),我想从子组中提取更高的记录date_updated并计算每组中的加权平均值.计算运行约15个小时,我有一种强烈的感觉,我做错了.

一,怪异的表格布局:

  • category
  • element_id
  • date_updated
  • value
  • weight
  • source_prefix
  • source_name

这里只有关键点element_id(BTREE,~8k独特元素).

和计算过程:

为每个组和子组创建哈希.

CREATE TEMPORARY TABLE `temp1` (INDEX ( `ds_hash` ))
                SELECT `category`, 
                `element_id`, 
                `source_prefix`, 
                `source_name`, 
                `date_updated`, 
                `value`, 
                `weight`, 
                MD5(CONCAT(`category`, `element_id`, `source_prefix`, `source_name`)) AS `subcat_hash`, 
                MD5(CONCAT(`category`, `element_id`, `date_updated`)) AS `cat_hash` 
                FROM `bigbigtable` WHERE `date_updated` <= '2009-04-28'
Run Code Online (Sandbox Code Playgroud)

我真的不明白哈希这个大惊小怪,但这种方式更快.我猜想,黑暗魔法.

查找每个子组的最大日期

CREATE TEMPORARY TABLE `temp2` (INDEX ( `subcat_hash` ))

                SELECT MAX(`date_updated`) AS `maxdate` , `subcat_hash`
                FROM `temp1`
                GROUP BY `subcat_hash`;
Run Code Online (Sandbox Code Playgroud)

使用temp2加入temp1以查找类别的加权平均值

CREATE TEMPORARY TABLE `valuebycats` (INDEX ( …
Run Code Online (Sandbox Code Playgroud)

mysql sql query-optimization

10
推荐指数
1
解决办法
1719
查看次数

如何避免意外'hg push'而不是'hg qpush'?

对于那些使用Mercurial和MQ扩展的人:

这是我第二次意外地将更改提交到中央存储库(hg push)而不是将补丁应用到我的工作目录(hg qpush).

我认为这是非常不幸的,因为这是一个非常简单的错误,并且具有非常严重的后果(为了生成一个新的提交,"撤消"las的一个,所以至少不得不为每个提交的更改做一个hg backout额外的操作hg push.中央存储库,但历史变得令人费解和不愉快.

我的目标是在orden的环境中配置一些别名或其他东西,以便hg push更加难以做到.

你有什么建议吗?我想的是:

[alias]
push=      <-- how to NOP the push command??
pushtoserver=push
Run Code Online (Sandbox Code Playgroud)

由于这是一个完全主观的问题,这就像社区维基一样.

谢谢!

configuration mercurial development-environment mercurial-queue

10
推荐指数
2
解决办法
1515
查看次数

在JavaScript中快速重新绘制unicode符号数组

我想用相同的CSS类更改许多符号的背景/前景色.现在我正在使用jQuery - 就像这样$('back_COLORED').css('background-color', '#00FF00'),但是当有许多具有此类(> 900)的元素时,这种方法很.

似乎是因为jQuery不会自行更改CSS规则,而是逐个查找所有元素并将内联样式应用于它们.至少,这是我在检查员看到的.所以,问题是:

  • 如何更改CSS规则本身?
  • 会更快吗?
  • 我可以跨浏览器(IE6不算)吗?

UPD:我正在尝试制作某种配色方案编辑器.来源是http://github.com/kurokikaze/cinnabar/.不要介意PHP的东西,编辑器完全是客户端的(只有一些从网上获取的库).

UPD2:尝试画布方法,仍然很慢.Canvas分支位于http://github.com/kurokikaze/cinnabar/tree/canvas.

javascript css canvas

8
推荐指数
1
解决办法
506
查看次数

查看“ difftool”中“ git log -p”的更改

我正在使用来获取分支更改以供审核git log -p master..newbranch,但这仅给了我diff文件。如何使用外部工具(如Meld)查看此差异?我想看看仅在此特定分支中有什么更改(从分支开始到技巧)。

git workflow meld difftool

7
推荐指数
1
解决办法
1081
查看次数

使用CSS交换元素?

我有相当简单的布局,像这样:

<div class="card">
    <span class="attack">1</div>
    <span class="defence">2</div>
</div>
Run Code Online (Sandbox Code Playgroud)

它们简单地排列在一起display: block.我想要实现的是当牌位于特定区域时,"攻击"显示在底部,"防守"位于顶部.我知道我可以使用jQuery来实现它,但是我可以使用纯CSS实现相同的效果吗?

css

5
推荐指数
1
解决办法
6513
查看次数

在体素空间上的正则表达式

有没有办法在3d体素网格中松散地描述一个对象(例如通过模式匹配有限自动机),就像我们可以用regexp松散地描述一维字符串中的模式一样?

假设我想要描述具有下部小平面的"A"型体素的长方体,其由具有高度3和宽度5的"B"或"C"型体素组成,并且将该描述与体素场匹配以找到图案的示例.我可以搜索精确模型(类似Boyer-Moore-in-3D),但我需要为某些对象指定可变尺寸(如上述长方体的可变长度).

regex 3d pattern-matching voxel

5
推荐指数
2
解决办法
410
查看次数

JS Prototypal继承:childs使用相同的父属性?

假设我有Player对象:

var player = function(name) {
    this.handlers = {};
}

player.prototype.on = function(event, callback) {
    if (!this.handlers[event]) {
        this.handlers[event] = [];
    }
    this.handlers[event].push(callback);
}
Run Code Online (Sandbox Code Playgroud)

它工作得很好,我可以创建玩家,每个人都有自己的处理程序.现在假设我需要继承player:

var testPlayer = function(name) {
    this.name = name;
};

testPlayer.prototype = new player();
Run Code Online (Sandbox Code Playgroud)

现在当我创建时testPlayer,每个人共享相同的handlers属性:

var adam = new testPlayer('Adam');
adam.on('test', function(){});

var eve = new testPlayer('Eve');
// eve.handlers == {'test':<function>}
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么?我理解,每个testPlayer原型都是new player我在描述子类时创建的同一个对象.但是,有没有办法让所有testPlayers拥有自己的处理程序集?

javascript prototypal-inheritance prototype-programming

5
推荐指数
1
解决办法
194
查看次数

如何在Pyke中断言一个消极的事实?

假设我有事实档案:

code_in_git(a)
code_in_git(b)
code_in_git(c)
build_on_disk(a)
build_on_disk(c)
Run Code Online (Sandbox Code Playgroud)

我想断言规则" if code_in_git($ branch)而不是build_on_disk($ branch),创建fact needs_build($ branch) ".我怎样才能做到这一点?

python declarative pyke

4
推荐指数
1
解决办法
392
查看次数