繁体   English   中英

关于使用唯一索引联接两个表

[英]About joining two table with unique index

我有两个这样的桌子

表“ X”

idX(pk) contentX(char)
10         foo1
21         foo2
34         foo3
45         foo4

表“ Y”

idY(pk) contentY(char)
11         boo1
22         boo2
33         boo3
40         boo4

加入后,插入一张桌子成为这个

idNew(pk)    idX(UQ) content(char)    idY(UQ) content(char)
   1           10         foo1           11         boo1
   2           21         foo2           22         boo2
   3           34         foo3           33         boo3
   4           45         foo4           40         boo4

我使用的SQL是这样的

    INSERT INTO DataBase.newtable(idX, contentX,idY,contentY)
        SELECT  X.idX, Y.idY, contentX, contentY
                FROM DataBase.X, DataBase.Y, ;

但是SQL语句不能插入到newtable中,因为idX和idY必须是唯一值。 我能做什么?

您需要为该插入指定连接字段,否则将获得两个表的笛卡尔积(即16行)。 如果在idx和idy字段上具有唯一索引,则此约束将导致插入失败。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM