简体   繁体   English

从内部联接中选择列

[英]SELECT COLUMNS FROM INNER JOIN

I wanted to select two columns from inner join of two select queries. 我想从两个选择查询的内部联接中选择两个列。 I have written a query joining three tables and from the result I want to get only two column. 我编写了一个查询,将三个表连接起来,从结果中我只想得到两列。 But my query is showing error.I am using oracle sql developer. 但是我的查询显示错误。我正在使用oracle sql developer。

SELECT firstname,surname
FROM (
SELECT A.firstname,A.surname,I.ACNUM,I.FIELDNUM 
FROM ACADEMIC A INNER JOIN INTEREST I
ON (A.ACNUM = I.ACNUM)
INNER JOIN SUBJECT S ON (I.FIELDNUM = S.FIELDNUM) WHERE S.TITLE = 'History' ) ;

I want only the firstname and surname but I am getting error like: 我只需要名字和姓氏,但是却出现如下错误:

Incorrect syntax near ';'. ';'附近的语法不正确。

Why are you using a subselect? 为什么要使用子选择? Just use: 只需使用:

SELECT A.firstname, A.surname
FROM ACADEMIC A INNER JOIN
     INTEREST I
     ON A.ACNUM = I.ACNUM INNER JOIN
     SUBJECT S
     ON I.FIELDNUM = S.FIELDNUM
WHERE S.TITLE = 'History' ;

When you select from query you should name it as well. 从查询中选择时,也应为其命名。 Try this: 尝试这个:

SELECT D.firstname,D.surname
  FROM (SELECT A.firstname,A.surname,I.ACNUM,I.FIELDNUM
  FROM ACADEMIC A
         INNER JOIN INTEREST I ON (A.ACNUM = I.ACNUM)
         INNER JOIN SUBJECT S ON (I.FIELDNUM = S.FIELDNUM)
  WHERE S.TITLE = 'History') D;

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

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