[前][次][番号順一覧][スレッド一覧]

mysql:5594

From: "otsuka" <"otsuka" <otsuka03@xxxxxxxxxx>>
Date: Mon, 3 Jun 2002 22:55:58 +0900
Subject: [mysql 05594] Re: 差集合について

otsukaです

略
> となりまして、教えていただいたLEFT JOINによってNULLを導き出せばBananaが算
> 出できるかとおもいます。ところが、ユーザーはたくさんいるので、まずTable
> BのユーザーからAを算出してから、そこからLEFT JOINをしたいのです。ただ、
> MySQLでは()をネストできないようなので、最後にWHERE User=Aとやっても、正
> しい値が帰りません。上の場合はEmpty setといわれてしまいます。(ユーザーAと
> ユーザーBを含めると、すべての食べ物を食べているので)
>
> 先にTableBのユーザーをAに絞ってから、LEFT JOINすることってできるのでしょう
> か?

うーむ、LEFT JOINの右側テーブルに抽出条件は設定できません。
(やっても思い通りの答えは返ってきません)

AテーブルのUserAが食べたものを配列変数に入れてSQL文の抽出条件に
当てはめるというのはどうですか?

<例 言語がわからないので、ACCESSのVBA風に>

SELECT * FROM B WHERE USER = 'A';
で食べたものを配列変数arrayFood()に格納する

SELECT * FROM A WHERE NOT arrayFood(0) AND NOT arrayFood(1) 〜;
これで食べていないものが抽出される。

またまたはずしてます?





[前][次][番号順一覧][スレッド一覧]

      5589 2002-06-03 14:41 ["Hidehiko Takahashi"] 差集合について                          
      5590 2002-06-03 16:17 ┣["Koji Koshiba" <koss]                                       
      5591 2002-06-03 16:34 ┣[madara <madara@xxxxx]                                       
      5592 2002-06-03 18:48 ┗["otsuka" <otsuka03@x]                                       
      5593 2002-06-03 19:52  ┗[Hidehiko TAKAHASHI <]                                     
->    5594 2002-06-03 22:55   ┣["otsuka" <otsuka03@x]                                   
      5595 2002-06-04 06:16   ┗[とみたまさひろ <tomm]                                   
      5596 2002-06-04 10:34    ┣[Hidehiko TAKAHASHI <]                                 
      5598 2002-06-04 11:47    ┃┣[Tomoyuki Ishino <ish]                               
      5599 2002-06-04 13:36    ┃┃┣[Hidehiko TAKAHASHI <]                             
      5601 2002-06-04 22:54    ┃┃┗[とみたまさひろ <tomm]                             
      5600 2002-06-04 22:52    ┃┗[とみたまさひろ <tomm]                               
      5597 2002-06-04 10:40    ┗[madara <madara@xxxxx]