В таблице нет такой вещи, как «последняя» строка, так как таблица Oracle не имеет понятия порядка.
Однако, предполагая, что вы хотите найти последний вставленный первичный ключ и , что этот первичный ключ является увеличивающимся числом, вы можете сделать что-то вроде этого:
select *
from ( select a.*, max(pk) over () as max_pk
from my_table a
)
where pk = max_pk
Если у вас есть дата создания каждой строки, это станет, если столбец named created
:
select *
from ( select a.*, max(created) over () as max_created
from my_table a
)
where created = max_created
В качестве альтернативы вы можете использовать агрегированный запрос, например:
select *
from my_table
where pk = ( select max(pk) from my_table )
Вот немного SQL Fiddle для продемонстрировать.
Хорошо, так что, похоже, нет никакого способа передать соответствие в качестве параметра, но я нашел довольно элегантное решение. Причиной совпадения на компоненте является то, что он выводится напрямую, он не сопоставлен ни с чем. Я обернул компонент в маршрут, который соответствует опоре initialEntries
на MemoryRouter
, как показано ниже.
var routerWrappedComponent= Enzyme.mount(<MemoryRouter initialEntries={[`/studio/00000000-0000-0000-0000-000000000000/manage/11111111-0000-0000-0000-000000000000`]}>
<Route path={`/studio/:customerId/:page/:serviceId`} component={() =>
<RouterWrappedComponent closeModalFunction={() => { }} closeModalLinkPath={""} />
</MemoryRouter>);
и Presto, матч заполнен
match: { path: '/studio/:customerId/:page/:serviceId',
url: '/studio/00000000-0000-0000-0000-000000000000/manage/11111111-0000-0000-0000-000000000000',
isExact: true,
params:
{ customerId: '00000000-0000-0000-0000-000000000000',
page: 'manage',
serviceId: '11111111-0000-0000-0000-000000000000' } }