select 一行符合条件
select one row on condtion
这里需要稍微调整一下,不知道能不能实现。
在下面,如果没有 '001' 行,那么我只想要该订单的 1 行,但是当有 001 时我确实想要那个,并且根据最早的时间下一个。
CREATE VIEW rklib.clspaytp AS Select * from
(
Select x.*,
row_number() over (partition by otord#
order by case ottrnc when '001' then 1 else 2 end
, ottrnd, ottrt
)
as RowN
from rklib.clspaytpp x
) a
where a.RowN in (1,2)
最好使用联合,例如:
最喜欢
这里需要稍微调整一下,不知道能不能实现。在下面,如果没有 '001' 行,那么我只想要该订单的 1 行,但是当有 001 时我确实想要那个,并且根据最早的时间下一个。
CREATE VIEW rklib.clspaytp AS
Select *
from rklib.clspaytpp
where ottrnc='001'
union
select *
from
(
select *
from rklib.clspaytpp
where ottrnc != '001'
limit 1
) x
这里需要稍微调整一下,不知道能不能实现。 在下面,如果没有 '001' 行,那么我只想要该订单的 1 行,但是当有 001 时我确实想要那个,并且根据最早的时间下一个。
CREATE VIEW rklib.clspaytp AS Select * from
(
Select x.*,
row_number() over (partition by otord#
order by case ottrnc when '001' then 1 else 2 end
, ottrnd, ottrt
)
as RowN
from rklib.clspaytpp x
) a
where a.RowN in (1,2)
最好使用联合,例如:
最喜欢
这里需要稍微调整一下,不知道能不能实现。在下面,如果没有 '001' 行,那么我只想要该订单的 1 行,但是当有 001 时我确实想要那个,并且根据最早的时间下一个。
CREATE VIEW rklib.clspaytp AS
Select *
from rklib.clspaytpp
where ottrnc='001'
union
select *
from
(
select *
from rklib.clspaytpp
where ottrnc != '001'
limit 1
) x