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

mysql:3567

From: Tybalt of Capulet <Tybalt of Capulet <ice-man@xxxxxxxxxx>>
Date: Fri, 27 Apr 2001 17:41:29 +0900
Subject: [mysql 03567] SLELECT 文の作成で悩んでます

神崎です。

現在お店の検索サイトを構築しています。
検索項目の中に「今日開いているお店」という項目がありその
SELECTでとても悩んでいます。
テーブルは下記のように休日用テーブルが存在します。
holidaytblは各お店の定休日が曜日や日にち指定で入っています。

まず今日が5/3(木)だったとします。
するとholidayが「木」以外かつdate_fからdate_tの間に
2001/5/3が入っていないデータをもってこなければなりません。
しかし00001の顧客は「月」も定休日なので「木」以外のお店を検索しても
検索結果として入ってきてしまいます。
さらに5/3を含んでないというSELECT文が思い浮かびません。
上記の事柄を満たすSQL文が思いつく方はいらっしゃいませんでしょうか?
「木」を含んでるデータや5/3が入っているSQL文は思いつくのですが、
その逆が思いつきません。

下のデータですと00003の顧客のみがヒットして欲しいわけです。

テーブル名:holidaytbl
顧客番号  :custno VARCHAR(5) -> PK(プライマリキー)
定休日    :holiday VARCHAR(30) -> PK
休日始め  :date_f DATE
休日終わり:date_t DATE

<holidaytbl>
|custno | holiday | date_f | date_t |
|-------|---------|--------|--------|
| 00001 |   月    |        |        |
| 00001 |   木    |        |        |
| 00002 |   GW    |2001/5/1|2001/5/6|
| 00003 |   水    |        |        |

何卒お知恵をお貸しいただけませんでしょうか?
よろしくお願いいたします。


_______________________________R_y_u_____
神崎 隆
Mail:ice-man@xxxxxxxxxx
_____K_a_n_z_a_k_i________________________


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

->    3567 2001-04-27 17:41 [Tybalt of Capulet <i] SLELECT 文の作成で悩んでます            
      3569 2001-04-27 19:47 ┣[sasaki yosito <yosit]                                       
      3570 2001-04-27 19:53 ┣[sasaki yosito <yosit]                                       
      3571 2001-04-27 20:40 ┗[UNO Shintaro <uno@xx]                                       
      3572 2001-04-28 00:09  ┗[ice-man <ice-man@xxx]