-1

私は MySQL にかなり慣れていないので、だれかが SQL 結合を手伝ってくれるかどうか疑問に思っていました。ここに私のテーブルと、最終結果がどのように見えるかを探しているものがあります。事前に感謝します!

TABLE ARTICLES 
article_id    title    body            date       category     author
1             Lorem    Lorem ipsum..   1/1/2013   1            Mitchell

TABLE CATEGORIES
category_id   category
1             Web Design

SQL ステートメント

select categories.category_id, categories.category as category
from categories left outer join articles on categories.category = articles.category

探している SQL の結果

article_id    title    body            date       category     author
1             Lorem    Lorem ipsum..   1/1/2013   Web Design   Mitchell
4

2 に答える 2

1

結合ON条件は ~ の間である必要がcategories.category_idありarticles.categoryます。SELECTそれ以外の場合は、リストに列を追加する必要があるだけです。

SELECT
  article_id,
  title,
  body,
  date,
  categories.category,
  author
FROM
  articles
  LEFT JOIN categories ON articles.category = categories.category_id

ここで実際に動作しています:http://sqlfiddle.com/#!2/0e0c1/1

MySQL のデフォルト出力ではm/d/yyyyなく、ここの形式で日付をリストしていることに注意してください。YYYY-MM-DDそれが実際にテーブルに格納した方法である場合 (適切なtypeVARCHAR()ではなくとして)、プロジェクトに深く入り込みすぎて簡単に変更できないようになる前に、その戦略を変更することをお勧めします。DATE

于 2013-02-05T03:06:22.020 に答える
0
SELECT
  article_id,
  title,
  body,
  date,
  categories.category,
  author
FROM
articles 
  LEFT JOIN categories ON articles.category = categories.category_id

この記事は MYSQL で大いに役立ちます。http://dev.mysql.com/doc/refman/5.0/en/join.html

于 2013-02-05T04:31:11.163 に答える