For some reason I keep thinking that this should be simple - but I just
can't seem to figure it out. Help??? Please??? [I've been working on
it for two days now.]
Overview: What I'm trying to do is query one table by passing it two
different variables - and return only the results that are COMMON to
both variables. [PHP 4.1.2/mySQL 3.23.44/FreeBSD]
Assume I have a site_category table:
-------------------
site_category
-------------------
site_category_id
site_id
category_id
-------------------
Perhaps a dump of this looks something like this:
---------------- ------- -----------
site_category_id site_id category_id
---------------- ------- -----------
1 2 10
2 3 11
3 4 12
4 4 10
5 5 12
6 5 14
---------------- ------- -----------
Using values for the varibles I'm passing to the query (see below) of
...
$category_id_1 = 10
$category_id_2 = 12
... the result I'm looking for is:
site_id = 4
... as this is the only site_id which is common to both ...
category_id = 10
category_id = 12
I've tried a bazillion variations on the following query:
SELECT sc.*
FROM site_category sc
WHERE (sc.category_id = $category_id_1 OR sc.category_id =
$category_id_2)
Breaking out the parts ...
So, if category_id_1 = 10, I'm returned:
site_id = 2
site_id = 4
So, if category_id_2 = 12, I'm returned:
site_id = 4
site_id = 5
How can I get that "4" which you can clearly see is common to both of
the parts above?
But just about no matter how I write my queries, I keep getting:
site_id = 2
site_id = 4
site_id = 4
site_id = 5
Or if use SELECT DISTINCT we get:
site_id = 2
site_id = 4
site_id = 5
[I want that extra 4 that the "DISTINCT" threw out!!!]
I keep thinking that I can do this in a single query - but I don't know
for sure. I've tried sub-selects with no luck [E.g. IN()]. Do I need
to do something with arrays and array_intersect? [I've even tried
messing with the PHP3 hacks for array_unique - trying to reverse them 'n
stuff - but still no luck.]
Does anyone have a simple solution? [I'll even take a hard solution -
but I keep thinking that I'm just looking at the the wrong way.]
TIA,
Summit
====================================================
There is no such thing as a stupid person -
there are only those who choose not to learn!
Summit - [EMAIL PROTECTED]
====================================================
--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php