我想显示仅对一个应用程序开始活动的人员列表' a'所有其他应用程序应该被禁用#39; Person id在一个表中,应用程序详细信息将在另一个表中。
必须选择满足以下条件的人员ID。我附上了我加入三个表的模型结果。我需要选择以下用户(突出显示),
person_id是主键。
查询使用如下:
SELECT * FROM (select p.person_id from ur_username u join ur_username_person up on u.username_id=up.username_id
join ur_person p on up.person_id=p.person_id
WHERE ( U.USERNAME LIKE 'A-%' OR U.USERNAME LIKE 'a-%')
AND u.status='ACTIVE' AND U.ROLE_ID =123 ) E
WHERE p.person_id IN ( select p.person_id from ur_username u join ur_username_person up on u.username_id=up.username_id
join ur_person p on up.person_id=p.person_id
WHERE ( U.USERNAME NOT LIKE 'A-%' OR U.USERNAME NOT LIKE 'a-%')
AND u.status='DISABLED' AND U.ROLE_ID =123 )
我正在接触任何其他应用程序中活跃的人。
在上面的表中,我想要用户名a-pri(以a-开头),状态为' ACTIVE'应用程序ID 123的所有其他状态均已禁用。没有其他用户名对该123 ID有效。
答案 0 :(得分:0)
我们可以尝试聚合private SparkContext createSparkContext_2() {
return (SparkContext) Utils.invokeMethod(sparkSession, "sparkContext");
}
,然后检查两件事。首先,我们可以检查有效的用户名Application_id
是否只出现一次。其次,我们可以断言只有一条记录显示为活动记录。这两个条件似乎符合您的要求。
a-pri
按照下面的链接,该链接使用更大的样本数据集来覆盖更多边缘情况。
答案 1 :(得分:0)
可能我没有正确理解您的请求,但这是我的代码:
Select username from your_rable where status = 'ACTIVE';
如果这不是您想要接收的内容,请提供更多数据集,可能需要更多Application_id以及所需的结果。