1

tblIT.Person_Name と tblEng.Full_Name の 2 つのフィールドがあります。最初のテーブルのすべての名前を含む新しい列を作成し、それらを 2 番目の列に追加して、すべてを 1 つのメイン列に配置したい

Person_name
-------------
John Smith  |
-------------
Gary Porter |

Full_name
-------------
Gary Porter |
-------------
Nancy Becker|

私はこれを探しています:

People
-------------
Gary Porter |
-------------
Nancy Becker|
-------------
John Smith  |

多くの人が私に言っている連結ではなく、単に 2 つのテーブルを結合しているだけです。

4

2 に答える 2

2

2 つのテーブルの UNION を作成します。これにより、重複する値が除外されます。

SELECT Person_name AS People FROM tblIT
UNION
SELECT Full_Name FROM tblEng

重複を含む両方のテーブルのすべての行が必要な場合は、UNION ALL を使用します。しかし、重複したくないようです。

結果セットは編集できません。

それらを別のテーブルの列に格納する場合は、UNION クエリからの結果を挿入できます。UNION キーワードは、単純な INSERT ステートメントで構文エラーを引き起こす可能性があるため、UNION をサブクエリとして INSERT に含めます。

INSERT INTO YourTable (People)
SELECT sub.People
FROM
    (
        SELECT Person_name AS People FROM tblIT
        UNION
        SELECT Full_Name FROM tblEng
    ) AS sub
于 2012-10-05T16:14:21.557 に答える
0

すべての結果をマージするには、 UNION(重複を許可するため、ALL を使用せずに) を使用します。

SELECT col1 FROM Person_name
UNION
SELECT col1 FROM Full_name

結果を結合するのではなく、結果を結合しています:)

于 2012-10-05T16:12:17.593 に答える