你好,歡迎回答我的問題
我有這張表:
CREATE TABLE IF NOT EXISTS business(
businessname varchar(250) NOT NULL,
title varchar(250) NOT NULL,
registerdate datetime NOT NULL,
id int NOT NULL,
city varchar(50) NOT NULL,
tk varchar(10) NOT NULL,
number varchar(20) NOT NULL,
branch int,
doy_id int NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (branch) REFERENCES business(id)
ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (doy_id) REFERENCES doy(id_kataxorisis)
ON DELETE CASCADE ON UPDATE CASCADE
)
正如您所看到的,這張表代表了一家公司,雖然很差,但確實如此。
分支列代表公司的“子”
我想找到(使用 select 陳述句)每個公司及其母公司的名稱,如果公司沒有母公司,那么它應該顯示為 NULL。
我已經考慮了一段時間,我什至不知道如何開始。請你幫助我好嗎?
uj5u.com熱心網友回復:
您可以將表與自身連接。您必須為查詢包括的表的每個實體添加別名。
例如,您可以執行以下操作:
select
c.id, c.businessname,
p.id, p.businessname
from business c
left join business p on p.id = c.branch
注意:查詢使用 aLEFT JOIN來確保您看到沒有父行的公司。在這種情況下,它在父值的位置顯示空值。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/361084.html
上一篇:SQLCASE陳述句邏輯
