列数が異なる 2 つのテーブルを結合します。
P粉879517403
P粉879517403 2023-08-24 18:54:05
0
2
542
<p>2 つのテーブル (テーブル A とテーブル B) があります。 </p> <p>2 つのテーブルの列数は異なります。テーブル A の方が多くの列があると仮定します。 </p> <p>これら 2 つのテーブルをマージし、テーブル B にない列で null 値を取得するにはどうすればよいですか? </p>
P粉879517403
P粉879517403

全員に返信(2)
P粉670107661

私はここに来て、上記の答えに従いました。しかし、データ型の順序の不一致によりエラーが発生しました。別の回答による以下の説明が役立ちます。

上記の結果はテーブル内の列の順序と同じですか? Oracle は列の順序に非常に厳密だからです。次の例ではエラーが生成されます:

リーリー

ORA-01790: 式は、対応する式と同じデータ型である必要があります

ご覧のとおり、エラーの根本原因は、列リスト指定子として * を使用することによって暗示される列の順序の不一致です。このタイプのエラーは、列リストを明示的に入力することで簡単に回避できます:

test1_1790からcol_a、col_b、col_cを選択します すべてを結合する test2_1790からcol_a、col_b、col_cを選択します。 このエラーが発生するより一般的な状況は、SELECT リスト内の 2 つ以上の列を誤って交換 (または移動) した場合です。 リーリー

また、上記の方法で問題が解決しない場合は、次のように列 にエイリアスを作成してみてはいかがでしょうか: (クエリはあなたのものとは異なりますが、ここでのポイントは、クエリを作成する方法です。列のエイリアス エイリアスを追加します。) リーリー

いいねを押す +0
P粉662361740

列の少ないテーブルの場合は、次のように空の列を追加できます。

リーリー
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート