小编Pan*_*dge的帖子

在一个SQL查询中更新多行的多个列

我试图在一个查询中为多行设置多个列,但到目前为止没有运气.

这是我的桌子的样子

表:用户

在此输入图像描述

我想在user_id IN(3,4,5)上设置'ext_id',并且还想在相同的行上设置ext_flag = Y和admin_role = admin.

结果表如下所示 在此输入图像描述

我的查询看起来像这样,但由于对SQL语法的不熟悉,我得到了错误.

update user
set ext_flag = 'Y', admin_role = 'admin', ext_id = 
case 
when user_id = 2 then 345
when user_id = 4 then 456
when user_id = 5 then 789
end
Run Code Online (Sandbox Code Playgroud)

我在使用多列的SET语法时遇到困难.

mysql sql database database-design

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

通过与另一个列表进行比较来从一个列表中删除重复项

我有两个对象列表,我想从其他列表中的一个列表中删除实例.

例如,我有两个列表,并假设每个字母代表对象.

列表a = {A,B,C,D,E,F,G,H,I,J}

列表清单B = {D,G,K,P,Z}

现在,显然listB有D和G,它们也在listA上,所以我希望listA是这样的

listA = {A,B,C,E,F,H,I,J}

你们能否建议用O(n)或小于O(n2)来解决这个问题.

我可以迭代两个列表并通过比较删除重复的实例,但我希望有更高效的东西.

java algorithm list

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

在方法中使用多个测试用例进行JUnit测试

我有一个以下的类A与一个构造函数,它接受两个字符串作为参数.

Class A
{
String test1;
String test2;

    public(String test1, String test2)
    {
    this.test1 = test1;
    this.test2 = test2;
    }
}
Run Code Online (Sandbox Code Playgroud)

我想在一个测试用例方法中测试一个带有三个测试用例的构造函数,即1. Null test1 2. Null test2 3. Null test1,Null test2

String test1 = "ABC";
String test2 = "XYZ";
@Test(expected=NullPointerException.class)
public void testNullConstructorValues() {
       new A(null, test2);
       new A(test1, null);
       new A(null, null);
}
Run Code Online (Sandbox Code Playgroud)

这里的问题是,在第一次构造函数声明之后,该方法抛出NPE并返回该方法.我希望该方法只在一个方法中执行所有3个构造函数声明并执行预期的异常检查.

有没有办法在一个方法中完成所有3个测试用例?

java junit unit-testing mockito

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

标签 统计

java ×2

algorithm ×1

database ×1

database-design ×1

junit ×1

list ×1

mockito ×1

mysql ×1

sql ×1

unit-testing ×1