我有一个表,该表包含需要查询的30多个列,其中一个列具有重复的条目。如何查询表并按一列进行区分,而不列出要在select中显示的每一列。
例如-
Select *
from Event
where subject_ID = 49
and date between '01-NOV-2019' and '14-NOV-2019'
这将显示100行,但应该只有50行,而case_id列是唯一区分重复项的列。我需要查看表中的所有列,但不希望重复case_id行,并且真的不想列出select中的所有列。
尝试
select distinct case_id, *
from event
where subject_ID = 49
and date between '01-NOV-2019' and '14-NOV-2019'
没有用。
我应该澄清一下,每隔一行都是重复的。每组数据都有2行,而case_id是唯一区分重复项的数据。有没有办法说只显示奇数行?
答案 0 :(得分:0)
是什么导致您的distinct
是您的*,您可以使用row_number()
和partition by case_id
每top
获得case_id
select * from
(Select row_number() over (partition by case_id order by case_id) rn, * from Event
where subject_ID = 49 and date between '01-NOV-2019' and '14-NOV-2019'
) t1
where t1.rn = 1
答案 1 :(得分:0)
如果有一列并且每个值都需要一行,则可以使用 WindowManager.LayoutParams params = new WindowManager.LayoutParams();
params.copyFrom(getDialog().getWindow().getAttributes());
params.gravity = Gravity.BOTTOM;
params.y = YOUR_ANCHOR_VIEW.getHeight();
getDialog().getWindow().setAttributes(params);
。在以下代码中,row_number()
是此列:
case_id