List:General Discussion« Previous MessageNext Message »
From:Josh Trutwin Date:June 6 2004 1:29am
Subject:Re: Subquery help...
View as plain text  
On Sat, 5 Jun 2004 19:48:44 -0600
"Daniel Isenhower" <jml@stripped> wrote:

> This is my first email to the list, so be nice ;-)

Welcome, this is a very helpful list...

> I'm having some difficulty with a subquery that I'm trying to do,
> and was wondering if anyone here can shed some light on the issue...

First off, I assume you are using a version of mysql able to handle sub-queries.  4.1 or
5.0 (4.0.xx does NOT support sub-queries)

> This query returns a result as expected:
> SELECT id FROM client_list WHERE name="Some Company"
> (the id returned here is 3)
> 
> This query also returns a result as expected:
> SELECT id FROM work WHERE client_id='3' ORDER BY id DESC;
> 
> Does anyone know why this one doesn't return any results?
> SELECT id FROM work WHERE client_id='(SELECT id FROM client_list
> WHERE name="Some Company")' ORDER BY id DESC;

Don't use quotes, it's looking for a client_id that is literally the stuff inside your
quotes.  I'm guessing that'll never be the case.  :)

Try:

SELECT id FROM work WHERE client_id = 
   (SELECT id FROM client_list WHERE name="Some Company") 
ORDER BY id DESC;

FWIW, this is an easy query with a JOIN:

SELECT id FROM work w
INNER JOIN client_list cl ON cl.id = w.client_id
WHERE cl.name = 'Some Company';

Just in case you are using mysql 4.0 or earlier...

Josh
Thread
Subquery help...Daniel Isenhower6 Jun
  • Re: Subquery help...Josh Trutwin6 Jun
  • Re: Subquery help...Daniel Isenhower6 Jun
    • Re: Subquery help...Josh Trutwin6 Jun