1

私は2つのテーブルを持っています:

表1:

---------------------------
|id_column1 | name_column |
---------------------------
|        1  | my_name1    |
|        2  | my_name2    |
---------------------------

表2:

--------------------------------------
|id_column2 | surname_column | fk_id1|
--------------------------------------
|      111  | my_surname1    | 1     |
|      222  | my_surname2    | 2     |
--------------------------------------
fk_id1 is foreign key referenced to table1.id_column1

SELECT * FROM table1 WHERE fk_id1=1;

--------------------------------------
|id_column2 | surname_column | fk_id1|
--------------------------------------
|      111  | my_surname1    | 1     |

どうすればこれを取得できますか(結果として2つのテーブル列を結合することは可能ですか):

------------------------------------------------
|id_column2 | surname_column | fk_id1| name    |
------------------------------------------------
|      111  | my_surname1    | 1     |my_name1 |

以下のようなもの:

SELECT * FROM table2 WHERE fk_id1=1 AND SELECT name FROM table1 WHERE id_column1=1;
4

3 に答える 3

5
SELECT id_column2,surname_column,fk_id1,name_column FROM table1,table2 WHERE table1.id_column1=table2.fk_id1 AND table1.id_column1=1;
于 2013-02-01T09:19:56.800 に答える
5

あなたはこのようなことを意味しますか?

SELECT t2.*, t1.name_column 
FROM table2 t2 
     INNER JOIN table1 t1 on t2.fk_id1 = id_column1 
WHERE t1.id_column1 = 1

これがテスト用のサンプルSQLフィドルです。

于 2013-02-01T09:20:34.217 に答える
1

これは簡単です。内部結合を使用して実行できます。

SELECT id_column2,surname_column,fk_id1,name_column as name FROM table1 Inner Join table2 on table1.id_column1=table2.fk_id1 where table1.id_column1=1;

または

SELECT id_column2,surname_column,fk_id1,name_column as name FROM table1 , table2 where table1.id_column1=table2.fk_id1 and table1.id_column1=1;

以下の形式の結果が必要な場合:

------------------------------------------------
|id_column2 | surname_column | fk_id1| name    |
------------------------------------------------
|      111  | my_surname1    | 1     |my_name1 |
于 2013-02-01T10:58:48.723 に答える