Hi Jason.
Can make is easier so:
SELECT * FROM film WHERE
genre IN ("comedy", "drama")
AND tag IN ("bill murry", "scarlett o'hara"
,"silly");
--- jason schleifer <[EMAIL PROTECTED]> wrote:
> heya folks,
>
> I'm trying to figure out the proper syntax for doing
> a query of something
> like this:
>
> I have two different types of things that people
> will be querying for, and I
> want to do an OR on each, but and AND between them..
>
> So let's say i've got a table that looks like this:
>
> Create TABLE film (id INTEGER PRIMARY KEY, genre
> VARCHAR, tag VARCHAR):
>
> Genre can be of whatever genre the user wants..
> comedy, drama, etc.
> tag is a list of words that are separated by ;..
> "kennedy;marilyn;funny;"
> etc
>
> If the user doesn't specify either genre or a tag
> when they're querying, I
> want to return the whole list of films (that's an
> easy one).
>
> If the user specifies one or more tags, I want to be
> able to return all
> moves that match EITHER tag.. for example, if htey
> specify "carrey" and
> "snow", it should return all movies that have either
> carrey or snow in the
> list.
>
> If they then specify a genre, I want it to return
> ONLY the movies in the
> specified genre that match carrey or snow.
>
> Then (just to make it more complicated), if they
> specify two genres, it
> should return all movies in either of those genres
> that match either carrey
> or snow.
>
> Does this make sense?
>
> I know how to string a whole bunch of LIKEs together
> with an OR to get it to
> work so you could get it to match a genre or a tag..
> but how do I do
> something like:
>
> SELECT * FROM film WHERE (genre = "comedy" OR genre
> = "drama") AND (tag =
> "bill murry" OR tag = "scarlett o'hara" OR tag =
> "silly");
>
> any help is greatly appreciated..
>
> cheers!
> -jason
> --
> jason schleifer
> ah-ni-may-tor | weirdo
> http://jonhandhisdog.com/
>
Вы уже с Yahoo!?
Испытайте
обновленную
и улучшенную
Yahoo! Почту!
http://ru.mail.yahoo.com
-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------