我正在尝试使用通过变量传递日期引用的子查询来完成需要计算列的查询.我不确定我是不是"做得对",但基本上查询永远不会完成并且旋转几分钟.这是我的查询:
select @groupdate:=date_format(order_date,'%Y-%m'), count(distinct customer_email) as num_cust,
(
select count(distinct cev.customer_email) as num_prev
from _pj_cust_email_view cev
inner join _pj_cust_email_view as prev_purch on (prev_purch.order_date < @groupdate) and (cev.customer_email=prev_purch.customer_email)
where cev.order_date > @groupdate
) as prev_cust_count
from _pj_cust_email_view
group by @groupdate;
Run Code Online (Sandbox Code Playgroud)
子查询inner join完成了自我加入,只给了我在日期之前购买的人数@groupdate.在EXPLAIN下面的是:
+----+----------------------+---------------------+------+---------------+-----------+---------+---------------------------+--------+---------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+----------------------+---------------------+------+---------------+-----------+---------+---------------------------+--------+---------------------------------+
| 1 | PRIMARY | _pj_cust_email_view | ALL | NULL …Run Code Online (Sandbox Code Playgroud) 是否有任何理由将jQuery trigger和on方法用作廉价且简单的pubsub?
以下作品:
$(document).on('my:custom:event',function(){
alert('this is an event');
});
Run Code Online (Sandbox Code Playgroud)
然后:
$(document).trigger('my:custom:event');
//=> alerts
Run Code Online (Sandbox Code Playgroud)
显然一个真正的jQuery pubsub插件安装起来很简单 - 我真的很想看到:
我觉得这是一个完整的笨蛋 - 但我似乎无法将Terminal.app和SSH连接到非标准的SSH端口.我在山狮队.
我已经尝试了以下所有方法:
$ ssh myuser@mysite.com -p 42586
$ ssh myuser@mysite.com -p42586
$ ssh -p 42586 myuser@mysite.com
$ ssh -p42586 myuser@mysite.com
Run Code Online (Sandbox Code Playgroud)
我似乎无法正确使用语法,所有上述操作都会产生错误.标志的正确顺序是什么?我检查了man页面,它显示在[user] @ [domain]部分之前,但是,这也会引发错误.
编辑:
更多信息和原始终端输出:
$ ssh mysite.com -p42586
--hangs--
$ ssh mysite.com -p 42586
--hangs--
$ ssh -p42586 mysite.com
usage: grep [-abcDEFGHhIiJLlmnOoPqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
[-e pattern] [-f file] [--binary-files=value] [--color=when]
[--context[=num]] [--directories=action] [--label] [--line-buffered]
[--null] [pattern] [file ...]
usage: ssh [-1246AaCfgKkMNnqsTtVvXxYy] [-b bind_address] [-c cipher_spec]
[-D [bind_address:]port] [-e escape_char] [-F configfile]
[-I …Run Code Online (Sandbox Code Playgroud) 我(非常)慢慢地获得了一个大型的静态文件站点,最新的所有最新好东西.我使用yepnope(与新的Modernizr.load打包)来处理异步依赖加载,同时我需要它与当前代码库向后兼容.
这要求我要么在yepnope()包装器中整个站点范围内的每个jQuery调用(在不久的将来要完成的任务太大),或者更有创意的解决方案是通过我自己的代理 jQuery的ready()功能,并延迟执行任何$代码,直到来自yepnope的回调准备好了...... ready()一旦yepnope测试满足jQuery的准备,jQuery的实际函数将成为处理程序.合理?
手头的问题:
我在这里制造灾难吗?这是一个合适的解决方法,我的短期问题是一个糟糕实施的网站意大利面条DOM中心代码?
更新#3
一种更经过深思熟虑的方法,也可以解释为匿名函数直接传递给jQuery的非就绪问题.这是尽可能少地保留$(function(){})调用和$(document).ready()调用功能的第三次尝试.
(function( window, undefined ) {
var jQuery = (function(fn) {
if (typeof fn === 'function') {
yepnope({
test: window.jQuery.length,
complete: function() {
fn();
}
});
}
var jQuery =
_jQuery = window.jQuery,
_$ = window.$;
jQuery = jQuery.prototype = {
constructor: jQuery,
ready: function( fn ) {
yepnope({
test: window.jQuery.length,
complete: function() {
fn();
}
});
}
}; …Run Code Online (Sandbox Code Playgroud)