方法和操作步驟如下:
成都創(chuàng)新互聯(lián)公司作為成都網(wǎng)站建設公司,專注成都網(wǎng)站建設、網(wǎng)站設計,有關企業(yè)網(wǎng)站制作方案、改版、費用等問題,行業(yè)涉及履帶攪拌車等多個領域,已為上千家企業(yè)服務,得到了客戶的尊重與認可。
1、首先,創(chuàng)建一個測試表,如下圖所示,然后進入下一步。
2、其次,插入測試數(shù)據(jù),如下圖所示,然后進入下一步。
3、接著,完成上述步驟后,查詢表中的數(shù)據(jù),“select t.* from test_tbl2 t?”,如下圖所示,然后進入下一步。
4、最后,完成上述步驟后,編寫sql,兩個表通過pid與id關聯(lián), “select t1.*, t2.* from test_tbl1 t1 join test_tbl2 t2 on t1.p_id = t2.id;”,如下圖所示。這樣,問題就解決了。
創(chuàng)建一個用戶表和配置表的關聯(lián)表,里面只需存用戶id和配置表id即可,通過中間表實現(xiàn)不同用戶配置不同
mysql 兩個表中的信息關聯(lián)起來使用方法:
1、創(chuàng)建主表:
create table UserInfo(
UserID int identity(1,1) primary key, --遞增主鍵
UserAccounts varchar(20),
UserName varchar(20),
UserPwd varchar(10));
2、創(chuàng)建附表(含外鍵)
create table News(
NewsID int identity(1,1) primarykey,
UserID int,
NewsTitle varchar( 50 ),
NewsRelease varchar( 200 ),
NewsReleaseTime datetime,
FOREIGN KEY (UserID) REFERENCES UserInfo(UserID)); --外鍵約束
如果附表已存在,但沒外鍵,可采用以下方法:
alter table profession add constraint fk_prov_id foreign key(prov_id) references province(prov_id) on update cascade on delete cascade;
第一:內(nèi)聯(lián)(inner join)
如果想把用戶信息、積分、等級都列出來,那么一般會這樣寫:
select * from T1, T3 where T1.userid = T3.userid
(其實這樣的結(jié)果等同于select * from T1 inner join T3 on T1.userid=T3.userid )。
把兩個表中都存在userid的行拼成一行(即內(nèi)聯(lián)),但后者的效率會比前者高很多,建議用后者(內(nèi)聯(lián))的寫法。
SQL語句:
select * from T1 inner join T2 on T1.userid = T2.userid
運行結(jié)果
T1.userid username password T2.userid jifen dengji
1 jack jackpwd 1 20 3
第二:左聯(lián)(left outer join)
顯示左表T1中的所有行,并把右表T2中符合條件加到左表T1中;
右表T2中不符合條件,就不用加入結(jié)果表中,并且NULL表示。
SQL語句:
select * from T1 left outer join T2 on T1.userid = T2.userid
運行結(jié)果
T1.userid username password T2.userid jifen dengji
1 jack jackpwd 1 20 3
2 owen owenpwd NULL NULL NULL
第三:右聯(lián)(right outer join)。
顯示右表T2中的所有行,并把左表T1中符合條件加到右表T2中;
左表T1中不符合條件,就不用加入結(jié)果表中,并且NULL表示。
SQL語句:
select * from T1 right outer join T2 on T1.userid = T2.userid
運行結(jié)果
T1.userid username password T2.userid jifen dengji
1 jack jackpwd 1 20 3
NULL NULL NULL 3 50 6
第四:全聯(lián)(full outer join)
顯示左表T1、右表T2兩邊中的所有行,即把左聯(lián)結(jié)果表 + 右聯(lián)結(jié)果表組合在一起,然后過濾掉重復的。
SQL語句:
select * from T1 full outer join T2 on T1.userid = T2.userid