小编Kai*_*aii的帖子

SQL GROUP BY:连续性的间隔?

这个想法就是说你有下表.

-------------
| oID | Area|
-------------
| 1 | 5     |
| 2 | 2     |
| 3 | 3     |
| 5 | 3     |
| 6 | 4     |
| 7 | 5     |
-------------
Run Code Online (Sandbox Code Playgroud)

如果按连续性分组,则可以使用此伪查询

SELECT SUM(Area) FROM sample_table GROUP BY CONTINUITY(oID)
Run Code Online (Sandbox Code Playgroud)

会回来的

-------------
| SUM(Area) |
-------------
|  10       |
|  12       |
-------------
Run Code Online (Sandbox Code Playgroud)

如果在oID处出现连续性中断,或者缺少连续性中断,则表示oID 4.

这些功能是否存在于Sql的标准功能中?

mysql sql gaps-and-islands

6
推荐指数
1
解决办法
992
查看次数

使用WHERE子句在距经度和纬度的距​​离范围内查找POI

我正在使用以下sql代码找出最接近设定坐标的'ALL'poi,但我想找出特定的poi而不是所有的poi.当我尝试使用where子句时,我得到一个错误,它不起作用,这是我目前卡住的地方,因为我只使用一个表用于所有poi的所有坐标.

SET @orig_lat=55.4058;  
SET @orig_lon=13.7907; 
SET @dist=10;
SELECT 
    *, 
    3956 * 2 * ASIN(SQRT(POWER(SIN((@orig_lat -abs(latitude)) * pi()/180 / 2), 2) 
    + COS(@orig_lat * pi()/180 ) * COS(abs(latitude) * pi()/180) 
    * POWER(SIN((@orig_lon - longitude) * pi()/180 / 2), 2) )) as distance 
FROM geo_kulplex.sweden_bobo
HAVING distance < @dist 
ORDER BY distance limit 10;
Run Code Online (Sandbox Code Playgroud)

mysql sql geometry gps geo

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

使用PHP快速通过网络传输大量小文件

我在同一个局域网上有2台Linux服务器.
使用PHP我需要将100000个小(10KB)文件从服务器A复制到服务器B.

现在我正在使用ssh2_scp_send,它非常慢(20分钟内有10K文件).

如何让它更快?

php

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

反引号引起sql查询错误

SELECT `text`,
       `oc_product_to_category.product_id`
FROM `oc_product_attribute` AS pa
LEFT JOIN `oc_attribute_description` AS od ON pa.`attribute_id`=od.`attribute_id`
LEFT JOIN `oc_product_to_category` AS opc ON pa.`product_id`=od.`product_id`
Run Code Online (Sandbox Code Playgroud)

引起的问题oc_product_to_category.product_id。我删除了它并且它起作用了。据我所知,我可以像这个 opc 那样做。product_id但为什么oc_product_to_category.product_id不起作用?

mysql sql

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

单个查询中的不同计数

我有一张这样的表:

-----------------------
| 姓名 | 日期 |
-----------------------
| 约翰 | 七月 |
| 卡尔 | 八月 |
| 约翰 | 七月 |
| 罗伯特 | 八月 |
| 卡尔 | 九月 |
| 约翰 | 八月 |
| 卡尔 | 八月 |
| 约翰 | 七月 |
| 罗伯特 | 九月 |
| 卡尔 | 八月 |
----------------------- 

我想计算名称除以月份。

选择名称, 
COUNT(IF(`Date` = 'July',1,0)) AS 七月,
COUNT(IF(`Date` = 'August',1,0)) AS 八月,
COUNT(IF(`Date` = 'September',1,0)) AS 九月,
COUNT(*) AS 所有 FROM …

mysql sql null aggregate-functions

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

GROUP BY用于SQL中的连续行

鉴于下表:

ID   State  Date
12   1      2009-07-16 10:00
45   2      2009-07-16 13:00
67   2      2009-07-16 14:40
77   1      2009-07-16 15:00
89   1      2009-07-16 15:30
99   1      2009-07-16 16:00

问题:
我如何通过"国家"字段进行GROUP,同时仍保持状态变化之间的边界?

SELECT MIN(ID) AS ID, State, MIN(Date) AS Date, COUNT(ID) AS Count
FROM table GROUP BY State
Run Code Online (Sandbox Code Playgroud)

结果如下:

ID   State  Date              Count
12   1      2009-07-16 10:00  4
45   2      2009-07-16 13:00  2


但这是预期的:

ID   State  Date              Count
12   1      2009-07-16 10:00  1
45   2      2009-07-16 13:00  2
77   1      2009-07-16 15:00 …

mysql grouping gaps-and-islands

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

Javascript中的原型

在原型语言中,对象基本上可以互相克隆.

所以,假设我们有一个构造函数:

Bla = function()
{
    this.a = 1;
}
Run Code Online (Sandbox Code Playgroud)

我可以像这样创建该对象的新实例:x = new Bla();.现在,x.a返回1.

如果我要写Bla.prototype.b = 2,那么x.b会返回2.但是,为什么?如果x"克隆"了Bla,为什么我不能这么说Bla.b = 2,没有引用Bla.prototype,仍然可以获得相同的功能?这与this关键字有关吗?

javascript oop prototype prototypal-inheritance

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

为什么onkeyup事件没有在javascript游戏中触发

我有一个2D游戏的开始 - 玩家可以使用箭头键在屏幕上驱动三角形.

问题在于,有时三角形将在一个方向上旋转或向前移动,直到再次按下相应的控制键并再次触发onkeyup事件.这通常发生在同时按下多个控制键的情况下.

我无法理解为什么它会被困在第一位,除非onkeyup事件因某些原因没有被解雇.非常感谢任何帮助,谢谢.

这里有一些代码,你可以在JSFiddle上找到一个完整的例子:

...

function init(){
    var canvas = document.getElementById('canvas');
    if(canvas.getContext){
        setInterval(play, 50);
    }
}

function play(){
    printTriState();
    updateTriAcceleration();
    applyTriVelocity();
    updateTriRotation();
    draw();
}

document.onkeydown = function(event){

if(!event.keyCode){
    keycode = window.event.keyCode;
} else {
    keycode = event.keyCode;
}
console.log(event.keyCode);
switch(keycode){
    //left
    case 37:
    tri.rotation = -1;
    break;

    //up
    case 38:
    tri.throttle = true;
    break;

    //right
    case 39:
    tri.rotation = 1;
    break;

    //down
    case 40:
    tri.currentSpeed = 0;
    break;

    default:
    break;
}
};

document.onkeyup = …
Run Code Online (Sandbox Code Playgroud)

javascript javascript-events onkeydown onkeyup

3
推荐指数
2
解决办法
3504
查看次数

修剪似乎不适用于PHP


我是trimPHP 的功能的粉丝.但是,我想我遇到了一个奇怪的障碍.我有一个名为keys的字符串,其中包含:"mavrick,ball,bouncing,food,easy mac",并执行此功能

// note the double space before "bouncing"
$keys = "mavrick, ball,  bouncing, food,  easy mac, ";
$theKeywords = explode(", ", $keys);
foreach($theKeywords as $key){
  $key = trim($key);
}
echo $theKeywords[2];
Run Code Online (Sandbox Code Playgroud)

但是在这里,输出是"弹跳"而不是"弹跳".trim这里使用的功能不正确吗?

编辑:
我的原始字符串在"弹跳"之前有两个空格,由于某种原因它不想显示.我尝试用foreach引用它($ theKeywords as&$ key)但是它引发了一个错误.

php

3
推荐指数
1
解决办法
1089
查看次数

停止网站上的HTML/Javascript和SQL注入

我拥有一个你有状态框的在线游戏.您可以根据自己的感受更新它.我遇到的问题是用户将java脚本标记放入消息并进入状态.所以当另一个用户来到他们的页面时,会弹出一个弹出框,说哈哈或他们想要的任何东西.

然后我通过使用停止了

$status = mysql_real_escape_string($_POST['status']);
$foo = preg_replace('/[^a-z]/i', null, $status );
Run Code Online (Sandbox Code Playgroud)

这已经停止了任何JavaScript的运行,但现在当有人向某人发送消息时,它会占用空格,因此消息"你好吗"它将显示"howareyou".当然这是安全的,但用户无法读取消息.是否还有其他方法可以阻止脚本标签插入到可用但仍允许空格的情况下?

我也真的害怕有人用XSS攻击我.因为以前,我被告知用户可以在消息中输入内容然后当其他用户打开它时,它会向他们发送密码.....

html php mysql

2
推荐指数
1
解决办法
4401
查看次数