CrudRepository,春季,选择第一行,应用不同的翻译

时间:2019-03-15 14:36:54

标签: oracle spring-data-jpa distinct

我想翻译这句话...

我在Scheme.Contract上有一个Oracle表     使用主键(“ contractNumber”,“ officeNumber”)

现在这是我的人口表(对不起,原始信息是机密的)

contractNumber, officeNumber, nameContract, stateContract
1,              1,          'First Contract',   'Enabled'
1,              2,          'First Contract',   'Enabled'
1,              3,          'First Wrong',      'Disabled'
2,              1,          'Disabled Contract','Disabled'
2,              2,          'Second Contract',  'Enabled'
2,              3,          'Second Damaged',   'Disabled'
3,              1,          'Third Contract',   'Disabled'
3,              2,          'Third Contract',   'Disabled'
3,              3,          'Third Contract',   'Disabled'
4,              1,          'Fourth Contract',  'Disabled'
4,              2,          'Fourth Contract',  'Disabled'
4,              3,          'Fourth Contract',  'Enabled'

第一阶段(选择已启用合同的数量)

SELECT DISTINCT Scheme.Contract.contractNumber 
FROM Scheme.Contract 
WHERE Scheme.Contract.stateContract = 'Enabled';

结果1, 2, 4

现在,第二阶段(选择第一行)

SELECT * 
FROM Scheme.Contract
WHERE 
ROWNUM <= 1
AND Scheme.Contract.stateContract = 'Enabled'
AND Scheme.Contract.contractNumber IN (
    SELECT DISTINCT Scheme.Contract.contractNumber 
    FROM Scheme.Contract 
    WHERE Scheme.Contract.stateContract = 'Enabled'
);

不幸的是,我的本机SQL(Oracle)无法正常工作!

预期结果(每个已启用和选定的合同编号的第一行)

contractNumber, officeNumber, nameContract, stateContract
1,              1,          'First Contract',   'Enabled'
2,              2,          'Second Contract',  'Enabled'
4,              3,          'Fourth Contract',  'Enabled'

我的问题是,如何将我的查询转换为Spring Data CrudRepository

0 个答案:

没有答案