MIDRANGE dot COM Mailing List Archive



Home » MIDRANGE-L » March 2014

Re: SQL: how to select 5 rows of this and 5 rows of that



fixed

On 21-Mar-2014 12:41 -0700, Stone, Joel wrote:
I would like to select 5 rows (of thousands) where field1 = 'A' and
union that with 5 rows where field1 = 'B'

How can I accomplish this with sql?

I have tried variations of

select * from file1
where field1 = 'A'
FETCH FIRST 5 ROWS ONLY
union
select * from file1
where field1 = 'B'
FETCH FIRST 5 ROWS ONLY

To use the FETCH ... ONLY clause in that context, the subquery must be a derived table expression; e.g. a Nested Table Expression (NTE):

select *
from ( select * from file1 where field1 = 'A'
FETCH FIRST 5 ROWS ONLY ) as Arows
union all
select *
from ( select * from file1 where field1 = 'B'
FETCH FIRST 5 ROWS ONLY ) as Brows

Or, using a Common Table Expression (CTE):

with
Arows as ( select * from file1 where field1 = 'A'
FETCH FIRST 5 ROWS ONLY )
, Brows as ( select * from file1 where field1 = 'B'
FETCH FIRST 5 ROWS ONLY )
select * from Arows
union all
select * from Brows






Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2014 by MIDRANGE dot COM and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available here. If you have questions about this, please contact