小编Mar*_*ski的帖子

强制退出Makefile目标而不引发错误

我使用由外部工具(Netbeans)生成的Makefile,我无法更改主目标的逻辑,但我能够在实际构建之前执行的目标中"注入"逻辑(.build-pre)在Netbeans生成的Makefile中具体说明)

我希望该目标有条件地终止make执行,但不会引发错误.如果我做

exit
Run Code Online (Sandbox Code Playgroud)

在"预"规则中,没有任何反应(我的意思是,规则终止,但继续).如果我加

exit 1
Run Code Online (Sandbox Code Playgroud)

make将终止,但它将返回错误状态.

有没有办法强制make以干净的方式退出?我搜索了make函数,但发现只有error/warn/info,但没有像exit一样.

提前致谢!

编辑:基于评论似乎不可能.可怜.

为了完整性,我想要实现的更具体的例子:

default: pre
  @echo "Doing default"

pre: 
  @echo "Doing pre"
ifeq "$(SOME_VARIABLE)" "yes"
  exit 0
fi
Run Code Online (Sandbox Code Playgroud)

使用上面的Makefile,我希望能够执行pre,并有条件地阻止'default'执行,但仍然返回0到shell.

netbeans makefile

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

在CentOS上的mktime()中的错误?

我一直在玩mktime,我注意到一种奇怪的,不一致的行为.

我提供的日期不是在DST(夏令时)期间,但是当tm_isdst设置为1时,mktime通常做的是将tm_isdst更改为0,并相应地调整时间,移动1小时.

然而,在大约1928年至1933年的时间段内(找不到不同的范围),行为是不同的.tm_isdst字段设置为0,但时间不会更改.这在执行时间计算等时会产生奇怪的现象.

我有一个很小的测试程序,对于给定的输入日期打印:原始struct tm,在调用mktime之后的struct tm,mktime结果和struct tm,它是在mktime结果上调用localtime的结果(应代表同一时刻)时间作为原始的).

输出是:

2013-01-01 12:00:00 (off=0, dst=1) -> 2013-01-01 11:00:00 (off=-28800, dst=0) ->   1357066800 -> 2013-01-01 11:00:00 (off=-28800, dst=0)
1927-01-01 12:00:00 (off=0, dst=1) -> 1927-01-01 11:00:00 (off=-28800, dst=0) ->  -1356930000 -> 1927-01-01 11:00:00 (off=-28800, dst=0)
1929-01-01 12:00:00 (off=0, dst=1) -> 1929-01-01 12:00:00 (off=-28800, dst=0) ->  -1293768000 -> 1929-01-01 12:00:00 (off=-28800, dst=0)
1932-01-01 12:00:00 (off=0, dst=1) -> 1932-01-01 12:00:00 (off=-28800, dst=0) ->  -1199160000 -> 1932-01-01 12:00:00 (off=-28800, dst=0)
1934-01-01 12:00:00 (off=0, dst=1) -> 1934-01-01 11:00:00 (off=-28800, …
Run Code Online (Sandbox Code Playgroud)

c centos mktime

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

从雪花中批量读取行

在mysql中,如果我必须一次读取10行,我可以将查询编写为

select * from foo limit 10, 10
Run Code Online (Sandbox Code Playgroud)

然后我可以继续增加偏移量并读取整个表。

我如何在雪花中做同样的事情?

我试过

select a, b from (select a, b from foo) tempview where rownum <= 100;
Run Code Online (Sandbox Code Playgroud)

但这不起作用。

sql snowflake-cloud-data-platform

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

Java断言-第二个参数评估?

我对Java断言的性能感到好奇。特别是,使用2个参数的Java断言,如下所示:

assert condition : expression
Run Code Online (Sandbox Code Playgroud)

即使“条件”评估为“真”,“表达”也会得到评估吗?我很好奇,如果我们想要超轻量级的“条件”,但“表达式”可能太繁重(例如字符串串联),这是否是可行的解决方案。诸如番石榴中的前提条件之类的解决方案将评估该表达式,从而使其在这种情况下不可行。

我的测试表明它的评估比较懒惰,但是我找不到任何证明它的参考资料。

提前致谢!

java assert

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

如何将整数数组转换为行?

我有一张桌子,上面有:

id、时间戳、[整数数组]

如何将整数数组转换为行?几乎与array_agg相反。

例如,

1, ts, [1,2,3]
2, ts, [7,8,9]
Run Code Online (Sandbox Code Playgroud)

将是

1, ts, 1
1, ts, 2
1, ts, 3
2, ts, 7
2, ts, 8
2, ts, 9
Run Code Online (Sandbox Code Playgroud)

我已经通读了https://docs.snowflake.net/manuals/sql-reference/udf-js-table-functions.html但不清楚这是否有效。我试图避免在数据库之外使用脚本语言。谢谢!

snowflake-cloud-data-platform

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

Java泛型方法 - 如何使其调用专用方法

Java中的泛型方法是否可以根据输入的类型调用特定的其他方法?

我尝试了以下示例,希望能够代表问题.

class X {
  public void pr(Object s) {
      System.out.println("Object");
  }

  public void pr(String s) {
      System.out.println("String");
  }

  public <T> void go(T x) {
      this.pr(x);
  }

  public static void main(String[] args) {
    String v = "hello";
    X x = new X();

    // Both print "Object", while I want "String"
    x.go(v);
    x.<String>go(v);
  }
}
Run Code Online (Sandbox Code Playgroud)

我希望go()调用pr(String).但无论我做什么,都会调用pr(Object).

以上示例仅供演示,实际应用要复杂得多.

提前致谢.

java generics

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

如何设计和处理事实表中的指数增长?

这是我使用 SQLServer 2008 R2 数据库表的场景

(更新:迁移到 SQL Server 2014 SP1 正在进行中,因此可以在此处使用 SQL Server 2014)。

A. 在表(这是一个事实表)中维护每日历史 B. 使用事实和维度表创建表格图

创建表的几个步骤

  1. 源数据库中的表副本将被推送到我的 SQLServer DAILY,其中包含 120,000 到 130,000 行,大约有 20 列

一种。第一天,我们得到 120,000 条记录,样本结构如下。

(修改或新记录以黄色突出显示)

源系统数据: 源系统数据

湾 第二天,我们得到了 122,000 条记录(2,000 条是新插入的,1,000 条是根据前一天的数据修改/更新的,119,000 条是前一天的数据)

C。第三天,我们得到了 123,000 条记录(1,000 条是新插入的,1,000 条是在第二天的数据上修改/更新的,121,000 条是从第二天开始的)

  1. 由于每日历史记录必须保存在 Fact 表中,一周内该表将有 100 万行,

2 周 - 200 万行

1 个月 - 500 万行

1 年 - 比如说 65 - 7000 万行

12 年 - 比如说 10 亿行(10 亿)

  1. 12年的历史必须保持

将数据存储在表中以处理这种情况的正确策略是什么,这也应该在生成报告时提供足够的性能?

  • 按月对表进行分区(该表将包含大约 500 …

sql-server data-warehouse star-schema tableau-api

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

在使用别名的子句中使用子查询

我有一个Mysql查询在哪里

我有一张桌子如下(样本数据)

Employee_id Months Salary
  1         10      200
  2         20      300
  3         30      400
Run Code Online (Sandbox Code Playgroud)

现在我想找到拥有最高总工资的员工人数(总工资=月*工资)

所以我有这样的查询

子查询:

((select max(mon_sal.mc) as max_mc from (
  select months*salary as mc from employee group by employee_id) as mon_sal)
as max_mon_sal)
Run Code Online (Sandbox Code Playgroud)

//找到最高工资总额

现在我的问题是我需要找到最高工资的人数,

select max_mon_sal.max_mc,name 
from employee group by employee_id 
having salary=max_mon_sal.max_mc from (
    (select max(mon_sal.mc) as max_mc from 
      (select months*salary as mc from employee group by employee_id) as mon_sal)
    as max_mon_sal)
Run Code Online (Sandbox Code Playgroud)

它显示Error.I有使用max_mon_sal别名的问题.请建议.

mysql sql

0
推荐指数
1
解决办法
630
查看次数