日本PHPユーザ会 掲示板

日本PHPユーザ会運営の掲示板です。※ただいまテスト運用中です。

日本PHPユーザ会 掲示板 » PHP事はじめ » SQL文で『?』

SQL文で『?』

ページ: 1

投稿者 投稿
会員
登録者: 3 2008
返信数: 4
現在、初級の本で勉強中なのですが、解説がなく(?)な部分がでてきました。

------------------------------------------------------------------------
$sql = "SELECT cookinglog.*,friendinfo.usrid as usrid FROM cookinglog";
$sql.= " LEFT JOIN friendinfo ON cookinglog.no=friendinfo.no";
$sql.= " ORDER BY logno DESC LIMIT 0,"

-----------------------------------------------------------------------

長いSQL文を『.』で結合しているのは理解できるのですが、下記の部分について何冊か持っている本を見ても記述がなく完全に『?』です。

・SELECT文の後にすぐテーブル名が来ている→?
・SELECT cookinglog.*,friendinfo.usrid as usrid FROM cookinglog→『.*,』?
・LEFT JOIN→?
・LEFT JOIN friendinfo ON cookinglog.no=friendinfo.noの『ON』

■使用しているテーブル名は
cookinglog
friendinfo

■フィールド名
usrid
logno

SELECT文なのでなにかのデータを取り出していると思うのですが,このSQL文はどういった処理なのでしょうか?

先輩方、宜しくご教授お願いします。
会員
登録者: 10 2007
返信数: 71
PHPというよりほとんどSQLの問題ですね。:) MySQLでしょうか?
MySQL 5.1 リファレンスマニュアル http://dev.mysql.com/doc/refman/5.1/ja/index.html(お約束)

>SELECT文の後にすぐテーブル名が来ている→?
>SELECT cookinglog.*,friendinfo.usrid AS usrid FROM cookinglog→『.*,』?

「SELECT ~ FROM」 の間は、フィールドの指定をカンマで列挙します。
フィールド名だけでなく、「テーブル名.フィールド名」で指定できます。
フィールド名を「*」にすると、そのテーブルの全てのフィールドを表します。
ここで「フィールド指定 AS 別名」とすると別名を付けられます。

>LEFT JOIN→?
>LEFT JOIN friendinfo ON cookinglog.no=friendinfo.noの『ON』

「LEFT JOIN テーブル ON 条件式」で、他のテーブルを組み合わせて処理することが出来ます(左外部結合)。ONはキーワードですので、続けて組み合わせ条件を指定します。

初級の本というのはPHPの本でしょうか?。私はそれとは別にMySQLの本を持っていますが、JOIN辺りは図を使った説明のほうがわかりやすく、また何度も読み返すことが多いので、そちらのほうも自分に合った本を探してみると良いと思います。
会員
登録者: 3 2008
返信数: 4
>kona@m 様
 またまたありがとうございます。
 
 やはりMYSQLの?でしたか。
 
 WEBリファレンスと一緒にMYSQLのリファレンス本も買う必要がありそうですね。

 探してみます! :P
 ありがとうございました :mrgreen:

ページ: 1

日本PHPユーザ会 掲示板 » PHP事はじめ » SQL文で『?』

日本PHPユーザ会 掲示板 は UseBB 1 フォーラムソフトウェア を使用しています