2017-01-04 15 views
0

誰かが2つのテーブルから選択する方法を教えてもらえますか?私はこれらのテーブルを持っています。最初が呼び出されSQLで2つのテーブルを選択する方法は?

動物

あり:

id owner_name  animal_name 
1 ludvik120  Larry 
2 marekk50  Pat 
3 ludvik120  Riki 

秒が呼び出されます。Animal_food

あり:

id owner_name  food 
1 marekk50  carrot 
2 ludvik120  apple 
3 ludvik120  orange 

義和は、あなたは "OWNER_NAME" が等しい列を見ることができるように

Pat - carrotLarry - appleRiki - orange

:私が達成したいtが出力されます。このようにすることは可能でしょうか?

+1

joinステートメントを見てください – apomene

+0

これは一意ではありません。あなたが参加すれば 'Larry - orange'と' Riki - apple'も返されるからです。すべての可能な順列を考えてください – Edward

+0

そしていくつかのアドバイスどのように私はそれを行うことができますか?私はそれで新しいです。 – ludvik120

答えて

0

はい、そうです。 SQL結合は、2つ以上のテーブルの行を結合するために使用されます。 JOINをの

異なる種類:

  1. (INNER)JOINを:両方のテーブルで一致する値を持つレコードを選択。
  2. LEFT(OUTER)JOIN:右のテーブルレコードが一致する最初の(一番左の)テーブルからレコードを選択します。
  3. RIGHT(OUTER)JOIN:左のテーブルレコードが一致する2番目(右端)のテーブルからレコードを選択します。
  4. FULL(OUTER)JOIN:左右のテーブルレコードに一致するレコードをすべて選択します。

一般的な構文は次のとおりです。条件

プログラマが/彼に合った1把握する必要がある列名1 =列名2 ONテーブル-name2の のJOINテーブル名1 FROM 列名を選択します彼女のプログラムの要求に応じて

+0

そして、私は何が必要なのか教えていただけますか?そしてどうやって ?私は全く新しいです – ludvik120

+0

このリンクに従ってください: - http://www.dofactory.com/sql/join – Dreamer

+0

よろしくお願いします。結果を教えてくださいありがとうございます – ludvik120

1
  1. 両方のフィールド

    SELECT COALESCE(Animals.animal_name, ' - ') || COALESCE(Animal_food.food, ' - ') 
    FROM Animals 
    LEFT JOIN Animal_food 
    ON Animals.owner_name=Animal_food.owner_name; 
    
+0

申し訳ありませんが、これは機能しませんでした。 – ludvik120

0
I recomend to use Ids like this: 
Animals 
AnimalId owner_name  animal_name 
1   ludvik120  Larry 
2   marekk50  Pat 
3   ludvik120  Riki 

Animal_food 
Animal_foodId owner_name  food 
1    marekk50  carrot 
2    ludvik120  apple 
3    ludvik120  orange 

I think you need a third table to join and show the information as you need. 

関係

RelationId  AnimalId  Animal_foodId 
1    2    1 
2    1    2 
3    3    3 
を連結するには、この

SELECT Animals.animal_name, Animal_food.food 
FROM Animals 
LEFT JOIN Animal_food 
ON Animals.owner_name=Animal_food.owner_name; 
  • をお試しください

    とクエリです:

    Select A.animal_name, F.food 
    from Relation R 
    inner join Animals A on R.AnimalId = A.AnimalId 
    inner join Animal_food F on R.Animal_foodId = F.Animal_foodId 
    

    よく見ます。

  • +0

    よろしくお願いします。何とかしてみてください。D – ludvik120

    関連する問題