Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Subselect in SELECT
Matthias Matker <kernkoenig_at_arcor.de> wrote in
news:45b24ffe$0$5727$9b4e6d93_at_newsspool3.arcor-online.net:
> John K. Hinsdale schrieb:
>> Matthias Matker wrote: >>> Hello together, >>> >>> SELECT >>> persons.name >>> ( SELECT COUNT(*) amount FROM person_cds WHERE ( >>> person_cds.pname= persons.name)) >>> FROM >>> persons >>> WHERE ( amount< 280) >>> ORDER by persons.name; >>> EXIT; >>> >>> I want the name of the persons ( name is primary key of persons), >>> which have fewer cds than 280. >>> >> The preferred way in SQL to express your desired result is something >> like: >> >> SELECT P.name, count(*) AS no_of_cds >> FROM persons P, person_cds PC >> WHERE P.name = PC.pname >> GROUP BY P.name >> HAVING count(*) < 280 >> ORDER BY P.name >>
SELECT persons.name, (SELECT COUNT(*) FROM person_cds
WHERE ( person_cds.pname= persons.name)) AMOUNT FROM persons
![]() |
![]() |