34,575
社区成员
发帖
与我相关
我的任务
分享
create table users(userid int identity primary key, name varchar(10))
go
create table friend(userid int , fid int)
go
alter table friend
add constraint fk_friend_userid foreign key (userid) references users(userid)
go
alter table friend
add constraint fk_friend_fid foreign key (fid) references users(userid)
go
insert into users(name) values
('张三'),('李四'),('王五'),('马六')
go
select * from users
go
insert into friend(userid,fid) values
(1,2),(1,3),(1,4),(2,1),(2,3),(2,4),(3,4),(4,3)
go
select a.name [用户名] ,b.name [他的好友]
from friend f
inner join users a on f.userid = a.userid
inner join users b on f.fid = b.userid
go
drop table friend
go
drop table users
go
(4 行受影响)
userid name
----------- ----------
1 张三
2 李四
3 王五
4 马六
(4 行受影响)
(8 行受影响)
用户名 他的好友
---------- ----------
张三 李四
张三 王五
张三 马六
李四 张三
李四 王五
李四 马六
王五 马六
马六 王五
(8 行受影响)
-- create
create table Friend(fid int,userid int,name varchar(100));
需要维护Friend 这张表信息
-- 关联user表查询,好友信息
select * from User u,Friend f where u.id = f.userid
-- insert
插入时,需要获取user 表的id
-- delete
delete from Friend where userid in('xxx','xxx',...)