Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql &引用;插入“;立柱整齐_Sql - Fatal编程技术网

Sql &引用;插入“;立柱整齐

Sql &引用;插入“;立柱整齐,sql,Sql,我有一张叫做“likes”的桌子,看起来像这样: ID1 ID2 1247 1468 1641 1468 1316 1304 1025 1101 ID Name Grade 1510 Jordan 9 1689 Gabriel 9 1381 Tiffany 9 1709 Cassandra 9 1101 Haley 10 1782 Andrew 10 1468 Kris 10 1641

我有一张叫做“likes”的桌子,看起来像这样:

ID1     ID2
1247    1468
1641    1468
1316    1304
1025    1101
ID      Name    Grade
1510    Jordan  9
1689    Gabriel 9
1381    Tiffany 9
1709    Cassandra   9
1101    Haley   10
1782    Andrew  10
1468    Kris    10
1641    Brittany    10
1247    Alexis  11
1316    Austin  11
1911    Gabriel 11
1501    Jessica 11
1304    Jordan  12
1025    John    12
1934    Kyle    12
1661    Logan   12
还有另一张叫做“学生”的桌子,看起来像这样:

ID1     ID2
1247    1468
1641    1468
1316    1304
1025    1101
ID      Name    Grade
1510    Jordan  9
1689    Gabriel 9
1381    Tiffany 9
1709    Cassandra   9
1101    Haley   10
1782    Andrew  10
1468    Kris    10
1641    Brittany    10
1247    Alexis  11
1316    Austin  11
1911    Gabriel 11
1501    Jessica 11
1304    Jordan  12
1025    John    12
1934    Kyle    12
1661    Logan   12
我要做的是返回一个包含以下列的新表:

NameofID1,GradeofID1,NameOfID2,GradeOfID2,这在某种程度上等同于“插入”

你知道我该怎么做吗


谢谢

您需要加入学生表两次

--insert into newtable(col1,col2,col3,col4)
select s1.name as name1,s2.name as name2,s1.grade as grade1,s2.grade as grade2
from likes l
join students s1 on s1.id=l.id1
join students s2 on s2.id=l.id2

您只需加入表两次:

Select s1.Name,s1.grade,s2.Name,s2.grade,
  from  likes l
   inner join students s1
    on l.ID1 = s1.ID
   inner join  students s2
    on l.id2 = s2.ID
  Where l.ID1 = 1247

您可以使用简单的
内部联接
来获取值,例如:

SELECT s1.name, s1.grade, s2.name, s2.grade
FROM student s1 JOIN likes l ON s1.id = l.id1
JOIN student s2 ON s2.id = l.id2;
这是

获得值后,可以使用
插入。。选择要插入到新表中的
语句


这是
插入到中的文档和示例。。。选择状态记忆。

mysql
sql server
?选择一个。我删除了不兼容的数据库标记。请使用您真正使用的数据库进行标记。我尝试的是返回一个新表。你不能退桌子。您正在尝试编写查询吗?创建一个视图?创建一个新表?可能与服务器混乱有关的表重复。我是SQL新手,最初我将其标记为SQL server,但也建议使用mysql。