テーブルの結合について - PHPプロ!Q&A掲示板

2395

  • 0P

テーブルの結合について

質問日時 / 2009年12月8日 11:00    回答数 / 4件

Questioner:  otakopu  このエントリーをはてなブックマークに追加 

キーワード / MYSQL   

PHP勉強中の初心者です。よろしくお願いします。

MYSQLのSELECT文でテーブルの結合を何度も試しているのですが、思いどおりになりませんのでご教授ください。

idlist テーブル
  1. id   name   taxfree
  2. 1    A      1
  3. 2    B      0
  4. 3    C      1
  5. 4    D      0
  6. 5    E      0

sales テーブル
  1. id   data   price
  2. 1    12/8   3000
  3. 1    12/7   2500
  4. 2    12/8   2000
  5. 2    12/7   2800
  6. 3    12/8   150
  7. 3    12/7   200

上記2つのテーブルから、
下記の形式のように、idlistから taxfree=1 のものをまず表示し、
最新日付と最新日付のプライスデータも表示したいと考えています。

  1. id   name   data   price
  2. 1    A      12/8   3000
  3. 3    C      12/8   150

どうぞよろしくお願いします。


ツリー一覧

┣A01shimixタイトルの「テーブルの結合」以前の問題なんですが、
┃┗A01-1otakopushimixさま、お世話になっております。 そういわれ
┣A02NurseAngel>>CODE SELECT idlist.id AS id ,idlist.name AS
┃┗A02-1otakopuNurseAngel様 返信有難うございます。 おかげさま
┗A03otakopuこの意見は質問者によって削除されました。

回答一覧

並び替え:

A01
answerershimix [12月8日 11:31] (最終編集:12月8日 11:54)

タイトルの「テーブルの結合」以前の問題なんですが、とりあえずsalesテーブルからidごとに最後の日付のデータを取り出すselect文は書けますか?

(追記)
MySQLのバージョンを書いていただけると有り難いかもです。

この意見に回答する

ツリーへ TOPへ

A01-1
replyerotakopu [12月8日 11:59] (最終編集:12月8日 12:07)

shimixさま、お世話になっております。

そういわれてやってみると、出来ませんでした。
確かに結合以前の問題ですね。

SELECT *
FROM sales
GROUP BY id
ORDER BY date desc

では駄目なんですね・・


MySQLのバージョンは5.1です。

この意見に回答する

ツリーへ TOPへ

A02
answererNurseAngel [12月8日 21:21]

  1. SELECT
  2.   idlist.id AS id ,idlist.name AS name ,sales.data AS data ,sales.price AS price
  3.   FROM idlist
  4.   INNER JOIN sales
  5.     ON idlist.id=sales.id
  6.       AND sales.data=(SELECT max(DATA) FROM sales )
  7.   WHERE idlist.taxfree=1


#以下妄想なのでスルー推奨

試行した結果も載せてほしいですね。
あとどうでもいいけど日付はdate

salesテーブルの作り方があまりよろしくない。
id ,idlist_id ,date ,price
としてリレーションを明らかにしておいた方がいい。

この意見に回答する

ツリーへ TOPへ

A02-1
replyerotakopu [12月9日 00:18]

NurseAngel様 返信有難うございます。

おかげさまで抽出させることが出来ました。
dataは記入ミスでした^^; 紛らわしくて申し訳ないです。


shimix様の課題もクリアできました。

内部結合と外部結合をもう一度見直してみようと思います。

返信くださった方々に改めてお礼を申し上げます。

この意見に回答する

ツリーへ TOPへ

A03
answererotakopu [12月13日 04:42]

この意見は質問者によって削除されました。

ツリーへ TOPへ

<<質問一覧へ



Pick Up Q&A

Q
動的なURLを静的に見せる方法
 このエントリーをはてなブックマークに追加 
A
普通に考えて、mod_rewrite でしょうね。 http://www.nishishi.com/blog/2006/01/mod_rewrite_url.html...

>>続きを読む

GETのままでは検索エンジンのロボットが拾ってくれなかったためにSEO対策として有効だと言われていますね。

▲解説者:岡本(アシアル株式会社 教育コーディネーター兼 システムエンジニア)