[PHP-users 3641] Re: SQL の select ???

加藤昌也 php-users@php.gr.jp
Sat, 17 Nov 2001 11:59:21 +0900


加藤です。

On Sat, 17 Nov 2001 11:08:39 +0900
"H.Sato" <h-sato_iwase@koso.co.jp> wrote:

> 自己レスです。
> 
> ほんとに基本がなっていない。(反省!)
> select文にwhereがある場合selece *はだめなんですね。
> そういえばAccessのクエリーでも使えませんでした。

MySQLを使ったことが無いのでMySQL固有の制約があるのか
はわかりませんが、SQLとしてはwhere句を付けた場合に
select * From XX where YY;
という使い方はできないなんていう制約はありません。

考えられるとしたら、where句で テーブル名.カラム名
としているので*をつけて全カラムを取得したときには
展開される名前も テーブル名.カラム名となっている
ということでしょうか。


ためしに、 select * を使ったときに、

> >   $juton1 = $row["juton1"];
> >   $juvnam = $row["juvnam"];
> >   $juser1 = $row["juser1"];

この部分を
  $juton1 = $row["ju.juton1"];
  $juvnam = $row["ju.juvnam"];
  $juser1 = $row["ju.juser1"];
としてみたらどうでしょう?

それと、
 while(list($key, $val) = each($row)) {
    echo $key . " => ". $val . "<br>";
 }
とでもして、$rowのキーと値をすべて表示させてみるとか。


----
加藤昌也                        株式会社ニルソフトウェア
                                    E-mail  kato@nil.co.jp
                                    TEL     03-3749-8601
                                    FAX     03-3749-8602