Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 仅选择计数为1的记录_C#_Oracle - Fatal编程技术网

C# 仅选择计数为1的记录

C# 仅选择计数为1的记录,c#,oracle,C#,Oracle,到处搜索,似乎找不到该怎么做。我有一个有两列的表 Order route ===== ===== Order_1 100 Order_1 101 Order_2 102 Order_3 103 Order_4 104 我希望结果是 Order_2 102 Order_3 103 Order_4 104 提前感谢。订单是一个保留关键字,因此我使用了订单列 首先,测试数据: create table order_route_table(order_co

到处搜索,似乎找不到该怎么做。我有一个有两列的表

Order    route
=====    =====
Order_1   100
Order_1   101
Order_2   102
Order_3   103
Order_4   104
我希望结果是

Order_2   102
Order_3   103
Order_4   104

提前感谢。

订单
是一个保留关键字,因此我使用了
订单列

首先,测试数据:

create table order_route_table(order_column varchar2(20)
    , route number);

insert into order_route_table 
select 'Order_1', 100 from dual
union all select 'Order_1', 101 from dual
union all select 'Order_2', 102 from dual
union all select 'Order_3', 103 from dual
union all select 'Order_4', 104 from dual;
然后传统上:

select order_column, min(route)
from order_route_table
group by order_column
having count(*) = 1;
使用分析:

select order_column, route
from (select order_column
        , route
        , count(*) over (partition by order_column) as order_count
    from order_route_table)
where order_count = 1;
无论哪种情况,结果都是:

ORDER_COLUMN              ROUTE
-------------------- ----------
Order_2                     102
Order_3                     103
Order_4                     104

Order
是一个保留关键字,因此我使用了
Order\u列

首先,测试数据:

create table order_route_table(order_column varchar2(20)
    , route number);

insert into order_route_table 
select 'Order_1', 100 from dual
union all select 'Order_1', 101 from dual
union all select 'Order_2', 102 from dual
union all select 'Order_3', 103 from dual
union all select 'Order_4', 104 from dual;
然后传统上:

select order_column, min(route)
from order_route_table
group by order_column
having count(*) = 1;
使用分析:

select order_column, route
from (select order_column
        , route
        , count(*) over (partition by order_column) as order_count
    from order_route_table)
where order_count = 1;
无论哪种情况,结果都是:

ORDER_COLUMN              ROUTE
-------------------- ----------
Order_2                     102
Order_3                     103
Order_4                     104

请向我们展示您尝试过的内容。SQL?C#?很难说你想要什么…很抱歉表格不好,我很快就把它输入了我的平板电脑。谢谢修理。它是一个使用ODP.NET的C#sql字符串。香农的回答很有效。非常感谢。非常棒的网站。请告诉我们您尝试了什么。SQL?C#?很难说你想要什么…很抱歉表格不好,我很快就把它输入了我的平板电脑。谢谢修理。它是一个使用ODP.NET的C#sql字符串。香农的回答很有效。非常感谢。非常棒的网站。谢谢,我实际上没有使用名称顺序。非常感谢您的帮助。在这种情况下,min函数做什么?在
select
子句中使用
group by
列时,必须在group by中或在聚合函数中使用。您不希望将route按分组,因为这会导致Order_1行在单独的组中并显示。因此
min
获取该组的最小路径。每个组只有一个底层行,因为
具有count(*)=1
所以
min
为我们获取该路径
Max
也可以。谢谢,我实际上没有使用名称顺序。非常感谢您的帮助。在这种情况下,min函数做什么?在
select
子句中使用
group by
列时,必须在group by中或在聚合函数中使用。您不希望将route按分组,因为这会导致Order_1行在单独的组中并显示。因此
min
获取该组的最小路径。每个组只有一个底层行,因为
具有count(*)=1
所以
min
为我们获取该路径<代码>最大值也可以。