Hi!

I'm not sure whether I understood what exactly you mean.

To exclude a row from the result, one should usually
use conditions in WHERE clause. Probably you missed
something in WHERE?

Martin Adler wrote:
> Hi,
> 
> is it possible to force mysql in a SELECT clause depend on a
> condition to give no results?
> 
> OK here is my Query
> 
> SELECT entries.id, entries.head, entries.date, entries.author, (catgroup.gid
> IS NULL || catgroup.gid = *user-group-id*) AS indi
> FROM entries
> LEFT JOIN category ON entries.cat_no REGEXP
> CONCAT("\\.",category.id,"(\\.|$)")
> LEFT JOIN entgroup ON entries.id = entgroup.eid
> LEFT JOIN catgroup ON category.id = catgroup.cid
> LEFT JOIN mzgroup AS mze ON mze.id = entgroup.gid
> LEFT JOIN mzgroup AS mzc ON mzc.id = catgroup.gid
> WHERE
> MATCH (head,text) AGAINST ("Who's not") &&
> (entgroup.gid IS NULL || entgroup.gid = *user-group-id*);
> 
> With thies query, i try to get a entry with a fulltext search.
> The entry should only be shown if the entry-group-id is NULL or
> is the same as the user-group-id and
> if all category-group-id's above the entry is NULL or
> is the same as the user-group-id
> 
> With "GROUP BY indi" i'll get maximally 2 results with which i can handle
> easy in PHP
> but i want to try it in MySQL.
> Maybe someone knows a cleaner solution
> 
> This is the result:
> +----+---------------+------------+--------------+------+
> | id | head          | date       | author       | indi |
> +----+---------------+------------+--------------+------+
> |  6 | Who's not ... | 2002-06-13 | Martin Adler |    1 |
> |  6 | Who's not ... | 2002-06-13 | Martin Adler |    0 |
> |  6 | Who's not ... | 2002-06-13 | Martin Adler |    1 |
> +----+---------------+------------+--------------+------+
> 
> 
> Here are the used tables
> 
> Table entries
> +----+-----+-------------+---------------+------------+--------------+------
> ---------------------------------------------------+------------------------
> ------+
> | id | uid | cat_no      | head          | date       | author       | text
> | keywd                        |
> +----+-----+-------------+---------------+------------+--------------+------
> ---------------------------------------------------+------------------------
> ------+
> |  1 |   1 | 0.1.3.8     | Headline  | 2002-03-12 | Martin Adler | Some Text
> | keywords                 |
> |  2 |   2 | 0.1.2       | Mittagessen   | 2002-04-03 | Martin Adler |
> Fruehjahrsputz                                          | Spring
> |
> |  3 |   4 | 0.1.2       | Hausboot      | 2002-04-03 | Martin Adler |
> Quarktasche                                             | Summer
> |
> |  4 |   2 | 0.1.2.21.22 | Kongo         | 2002-04-04 | Martin Adler | Kebup
> | Springer                     |
> |  5 |   2 | 0.1.3       | Hanfkissen    | 2002-04-04 | Martin Adler |
> Bananen sind lecker!                                | Palmen Testwagen
> Radiergummi |
> |  6 |   2 | 0.1.2.24    | Who's not ... | 2002-06-13 | Martin Adler | .in
> the group technik shouldn't be able to read this |
> |
> +----+-----+-------------+---------------+------------+--------------+------
> ---------------------------------------------------+------------------------
> ------+
> * These are the entries, which are assigned to the categories
> 
> 
> Table category
> | id | cat_no             | cat                   |
> +----+--------------------+-----------------------+
> |  1 | 0                  | ROOT                  |
> |  2 | 0.1                | Hardware              |
> |  3 | 0.1                | Software              |
> |  4 | 0.1.2              | HP                    |
> |  5 | 0.1.2.4            | e-pc                  |
> |  6 | 0.1.2.4.5          | CD-Brenner            |
> |  7 | 0.1.2              | PC                    |
> |  8 | 0.1.3              | php                   |
> |  9 | 0.1.3.8            | rekursiv              |
> | 10 | 0.1.3.8.9          | path                  |
> | 12 | 0.1.3.8.9.10.11    | kategorie12           |
> | 15 | 0.1.3.8.9.10.11    | kategorie15           |
> | 16 | 0.1.3.8.9.10.11    | kategorie16           |
> | 17 | 0.1.3.8.9.10.11    | kategorie17           |
> | 20 | 0.1.3.8.9.10.11.12 | kategorie20           |
> | 21 | 0.1.2              | Netzwerktechnik       |
> | 22 | 0.1.2.21           | Router u. L3-Switches |
> | 24 | 0.1.2              | abba                  |
> +----+--------------------+-----------------------+
> * cat_no is the Hierarchy --> HP is a subdir of Hardware and Hardware is a
> subdir of ROOT and ROOT is the topleveldir
> 
> Table mzgroup
> +----+---------+
> | id | name    |
> +----+---------+
> |  1 | nobody  |
> |  2 | technik |
> +----+---------+
> 
> 
> Table catgroup
> +-----+-----+
> | gid | cid |
> +-----+-----+
> |   2 |  24 |
> |   2 |  23 |
> |   1 |   2 |
> +-----+-----+
> 
> * gid = group id, eid = category id
> 
> 
> Table entgroup
> +-----+-----+
> | gid | eid |
> +-----+-----+
> |   2 |   6 |
> +-----+-----+
> * gid = group id, eid = entries id
> 
> 
> 
> thank's


-- 
For technical support contracts, visit https://order.mysql.com/
    __  ___     ___ ____  __
   /  |/  /_ __/ __/ __ \/ /    Mr. Alexander Barkov <[EMAIL PROTECTED]>
  / /|_/ / // /\ \/ /_/ / /__   MySQL AB, Full-Time Developer
/_/  /_/\_, /___/\___\_\___/   Izhevsk, Russia
        <___/   www.mysql.com   +7-902-856-80-21


---------------------------------------------------------------------
Before posting, please check:
   http://www.mysql.com/manual.php   (the manual)
   http://lists.mysql.com/           (the list archive)

To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php

Reply via email to