小编gro*_*426的帖子

MySql查询同一表以收集到期日和年初至今的信息

尽管我确信有一个简单的答案,但我一直在努力解决这个问题几个小时.我正在尝试从同一个表中收集月度信息和年初至今的信息.我也加入了第二张桌来收集团体名称.

费用表:

+-----------------+---------------+------+-----+---------+----------------+
| Field           | Type          | Null | Key | Default | Extra          |
+-----------------+---------------+------+-----+---------+----------------+
| id              | int(5)        | NO   | PRI | NULL    | auto_increment |
| account         | char(14)      | NO   |     | NULL    |                |
| batch           | int(5)        | NO   |     | NULL    |                |
| date            | date          | NO   |     | NULL    |                |
| description     | varchar(50)   | NO   |     | NULL    |                |
| debit           | decimal(10,2) | NO …
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

对象在返回值时返回NaN

我承认我在JavaScript和JSON方面很弱.我花了很多时间试图弄清楚为什么我的对象中的数字在加在一起时会返回NaN.考虑到这一点,下面是我的JSON,存储到变量:

var data = [
    {
        "acc_ext_id": null,
        "cat_code": 10002,
        "cat_ds": "REVENUE",
        "category_id": null,
        "chart_id": null,
        "created_at": null,
        "dept_id": null,
        "feb": null,
        "id": null,
        "jan": 30,
        "note": null,
        "total_cost": null,
        "updated_at": null,
        "year_id": null
    },
    {
        "acc_ext_id": "41260-02600",
        "cat_code": 10002,
        "cat_ds": "REVENUE",
        "category_id": 2,
        "chart_id": 2373,
        "created_at": "2013-01-15 16:43:52.169213",
        "dept_id": 86,
        "feb": 45,
        "id": 3,
        "jan": 60,
        "note": "Two",
        "total_cost": 105,
        "updated_at": "2013-01-15 16:43:52.169213",
        "year_id": 1
    }
]
Run Code Online (Sandbox Code Playgroud)

然后我尝试迭代对象并对值求和:

var jan;

for (var i=0;i<data.length;i++){ 
    if(data[i].jan != null){    
        jan += parseFloat(data[i].jan); …
Run Code Online (Sandbox Code Playgroud)

javascript

4
推荐指数
2
解决办法
2万
查看次数

使用带有连接的占位符

我试图通过在连接上替换我的参数来避免任何SQL注入漏洞.

Category.joins("LEFT OUTER JOIN incomes ON incomes.category_id = categories.id AND incomes.dept_id = ?", params[:Dept])
Run Code Online (Sandbox Code Playgroud)

这会尝试在其中执行带有问号的查询,而不是将其替换为param.这样做的正确方法是什么?

编辑:

查询需要返回:

SELECT categories.* 
FROM "categories" 
LEFT OUTER JOIN incomes 
ON incomes.category_id = categories.id AND incomes.dept_id = 86
Run Code Online (Sandbox Code Playgroud)

SELECT categories.* 
FROM "categories" 
LEFT OUTER JOIN incomes 
ON incomes.category_id = categories.id 
WHERE incomes.dept_id = 86
Run Code Online (Sandbox Code Playgroud)

效果差异很大!

ruby sql join ruby-on-rails

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

标签 统计

sql ×2

javascript ×1

join ×1

mysql ×1

ruby ×1

ruby-on-rails ×1