資料庫表設計中,欄位關聯兩個表,可以嗎?這樣關聯有什麼意義嗎

時間 2021-10-14 22:24:14

1樓:

用left join 加case when 吧select case when b.column2 is not null when b.column2 else c.

column2 end

from 附件表 a left join

複核表 b on a.column1=b.column1 left join

稽核表 c on a.column1=c.column1大致思路是這樣。看是否還有其它疑問

2樓:匿名使用者

可以關聯兩個表,或更多表。

關聯可以減少資料的重複儲存,保證資料的正確性。

保證資料的正確(完整性)是很重要的。

關聯可以防止更新資料時,破壞資料的完整性。

比如當**表和銷售表不關聯到商品表時,

商品名稱變更時需要修改三張表,如果一時疏忽可能遺漏某個表的更新處理。

3樓:匿名使用者

一個欄位關聯兩個表

如果你這個欄位是主表的一個欄位, 關聯的是兩個字表,那麼完全是沒有問題的。

例如一個員工表、一個 考勤表、一個 工資表員工表的 員工id欄位 關聯兩個表 (考勤表、工資表)

4樓:

可以,這是關係性資料庫的表示方法,其意義在於減少重複資料的儲存。

5樓:匿名使用者

肯定是可以的,外關聯就可以

資料庫表設計中,一個欄位關聯兩個表,可以嗎?這樣關聯有什麼意義嗎?

6樓:一顆程式猿

可以, 但是通常這種情況可以將兩表分離, 或者這三個表都是以這個欄位關聯了相同的一個表

當然, 如果這個欄位是主鍵的話, 那很合理

請問sql資料庫中有一個表中的兩個欄位,同時關聯另一個表中的同一個欄位,要使它級聯刪除應該怎麼做?

7樓:匿名使用者

sql的外來鍵約束可以實現級聯刪除與級聯更新;

oracle則只充許級聯刪除。

sql級聯刪除與級聯更新使用格式:

create table a001(id int primary key,name varchar(20))

create table a002(id int references a001(id)on delete cascade on update cascade,age tinyint)

oracle級聯刪除使用格式:

create table a001(id int primay key,name varchar2(20))

create table a002(id int references a001(id)on delete cascade,age number(2,0))

8樓:匿名使用者

foreign key   (column[,...n])references referenced_table_name[(ref_column[,...n])]

[on delete cascade]

關鍵是cascade。

sql server,一張表中,有多個欄位關聯另一張表,怎麼寫sql語句?

9樓:匿名使用者

對於這個問題,無論語句怎麼寫,其實執行起來資料庫內部還是要用join操作來進行處理的,所以你用join就可以,優化的話可以再user表的id屬性上加索引(如果是主鍵預設是有索引的)

10樓:匿名使用者

原理的確是來

你那源個思路。bai但可以通du過下面zhi方式來簡化寫法

daoselect

auserid,auserdes = (select userdes from user b where a.auserid = b.user),

buserid,buserdes = (select userdes from user b where a.bauserid = b.user),

cuserid,cuserdes = (select userdes from user b where a.causerid = b.user),

from userlist a

資料庫設計使用者表

id username password message type自增欄位 登入名 密碼 資訊 區分是客戶或商家或運營商 範例 id username password message type1 運營小王 123456 完美時空商務總監 1 先要確定一個賬戶只能是存在一種角色還是可以三種角色同時存...

設計表時,ID欄位在資料庫中設定為自增好嗎?能詳細說明原因嗎

設計表時對於唯一標識欄位根據資料表的增長情況可以選擇是自增還是newid sqlserver 自增整型欄位對於表資料行很大的情況下不建議用,因為總會有數值不夠用的時候 但自增欄位有個好處,對於流水記錄可以很方便記錄順序記錄 另外時間戳也是個不錯的選擇 另外選擇newid sqlserver 即gui...

請問oracle資料庫中兩張表分別在兩個資料庫中怎麼

無法進行關聯,oracle不能跨資料庫操作,只可以跨使用者操作。sql select a.name b.id from user1.table1 a,user2.table2 b where a.id b.id 解釋 當前登入的使用者必須有訪問user1表table1許可權和user2使用者的tab...