Re: [PHP] question, about mysql query

[email protected] ("Daniel Brown")
Newsgroups php.db,php.general
Message-ID <[email protected]>
    This isn't a PHP question at all.  It's a MySQL question.
However, answers are below, with forwards to the appropriate lists for
archiving purposes.

On Mon, Jun 2, 2008 at 9:19 PM, LKSunny <[email protected]> wrote:
> two table, tablea and tableb
> tablea
> uid, col1, col2, col3
> 1,    xx, xx, xx
> 2,    xx, xx, xx
> 3,    xx, xx, xx
> tableb
> id, uid, col1, firstdata
> 1, 1, xx, 1
> 2, 2, xx, 0
> 3, 2, xx, 0
> 4, 1, xx, 0
>
> i want query tablea, and join tableb, uid is associate, ok "LEFT JOIN
> `tableb` b ON a.uid = b.uid", and than i want tableb firstdata=1 or tableb
> no associate uid "b.firstdata=1 OR b.uid IS NULL", by the time all ok, but i
> want add one case, if tableb firstdata all is 0, result one row, like b.uid
> IS NULL, i don't know how to
>
> i want result is all tablea data no double, tableb one case firstdata is 1
> (one uid in tableb just one row possible is firstdata=1), or no row in
> tableb, or all firstdata = 0
>
> Thank You Very Much !!
>
> This query can't
> SELECT a.*, b.* FROM `tablea` a LEFT JOIN `tableb` b ON a.uid = b.uid WHERE
> (b.firstdata=1 OR b.firstdata=0 OR b.uid IS NULL)

    Okay, I had a difficult time understanding what it is you need,
but hopefully got enough from your message to be able to help you out.
 What I think you may be looking for is something like this:

SELECT * FROM tableb WHERE firstdata='1' AND id IN (SELECT DISTINCT id
FROM tablea ORDER BY id ASC);

    That will select only unique `id` columns from `tablea` and select
only the rows from `tableb` where the `id` columns match and
`firstdata` is set to '1'.  You can then modify that query as needed.

-- 
</Daniel P. Brown>
Dedicated Servers - Intel 2.4GHz w/2TB bandwidth/mo. starting at just
$59.99/mo. with no contract!
Dedicated servers, VPS, and hosting from $2.50/mo.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.