簡體   English   中英

形成SQL查詢

[英]Formation of a SQL query

我有3張桌子:

Employee  (EmployeeNo(PK),shopID(FK1) employeeName, employeeAddress) 

Shop      (shopID(PK), shopName, shopAddress) 

Comment   (EmployeeNo(FK), employeeComments) 

是否可以運行查詢,顯示在評論表中留下評論的所有員工的姓名,即使員工姓名不在表中?

Select employeeName from employee,comment
where employee.employeeNo = comment.employeeNo

我認為這是一個你必須使用的簡單連接。

它實際上是一個您可以輕松學習的小查詢。

以下查詢將返回留下評論的員工姓名和他留下的評論

SELECT employeeName, employeeComments
FROM Employee INNER JOIN Comment ON (Employee.EmployeeNo = Comment.EmployeeNo) 

嘗試這個:

SELECT DISTINCT E.employeeName
FROM Employee E INNER JOIN Comment C ON E.EmployeeNo = C.EmployeeNo;

要顯示已評論的員工,我們有以下查詢:

SELECT DISTINCT e.employeeName
FROM Employee e
WHERE e.EmployeeNo IN (SELECT EmployeeNo
                              FROM Comment) 
SELECT E.employeeName
FROM Employee E
INNER JOIN Comment C ON E.EmployeeNo = C.EmployeeNo;
SELECT DISTINCT e.EmployeeName
FROM [Employee] AS e 
RIGHT JOIN [Comment] AS c 
ON e.EmployeeNo = c.EmployeeNo

要么

SELECT e.employeeName
FROM [Employee] AS e 
WHERE e.EmployeeNo IN (
                        SELECT EmployeeNo
                        FROM [Comment]
                      ) 
    select e.employeeName,
           c.employeeComment 
    from Employee e
    right join Comment c on
    e.EmployeeNo=c.EmployeeNo

這將為您提供員工姓名和評論

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM