資料庫名稱是該資料庫中的員工資訊,我試圖通過使用兩個不同的條件來顯示一個“person_name”列,該列在“works”和“employee”兩個表中都可用,這些條件將過濾每個表中的值。這樣我就可以在一個“person_name”列中看到由兩個表中的兩個條件過濾的值。
作業表和員工表,


這是我到目前為止所做的,
USE employee_information;
SELECT employee.person_name, works.person_name
FROM employee, works
WHERE city = "Miami" AND salary > 50000;
我得到的結果,
對于該命令,我從兩個表中都得到了這個兩列。條件有效,但值重復,有兩列,但我需要顯示一列填充兩個表中的值,這兩個條件都為真

我想要的結果是,
person_name//table name
Alex //values those are true by both condition in each table
Robin Hood
uj5u.com熱心網友回復:
您需要使用person_name作為關系連接表。
SELECT employee.person_name
FROM employee
JOIN works ON employee.person_name = works.person_name
WHERE employee.city = 'Miami' AND works.salary < 50000;
uj5u.com熱心網友回復:
在您的情況下,您可以使用JOIN,這是示例
SELECT w.*,e.company_name,e.salary FROM works w INNER JOIN employee e ON e.person_name = w.person_name WHERE city = "Miami" AND salary > 50000;
uj5u.com熱心網友回復:
您必須在“員工表”中添加一個名為 id 的主鍵,并在“作業表”中添加一個名為employee_id 的外鍵
你的查詢將是
SELECT employee.person_name
FROM employee
WHERE employee.id, works.employee_id
and city = "Miami" AND salary > 50000;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/454983.html
