-1
私は画像のようにいくつかのテーブルを持っていますが、最後のテーブルに示すように出力したいと思います。それはBBはあなたが指定した方法を以下にこれを行うことができますsql階層クエリ
私は画像のようにいくつかのテーブルを持っていますが、最後のテーブルに示すように出力したいと思います。それはBBはあなたが指定した方法を以下にこれを行うことができますsql階層クエリ
アウトSPの
とSQL Serverのクエリを使用して、それを達成することが可能です。あなたによって与えられた関係は非常に明確ではなかったと私はいくつかの自由を取った:
IF OBJECT_ID ('role') IS NOT NULL
DROP TABLE role
GO
CREATE TABLE role
(
roid INT NULL,
roname VARCHAR (20) NULL
)
GO
IF OBJECT_ID ('rolechild') IS NOT NULL
DROP TABLE rolechild
GO
CREATE TABLE rolechild
(
parentroid INT NULL,
childroid INT NULL
)
GO
IF OBJECT_ID ('rolechildrel') IS NOT NULL
DROP TABLE rolechildrel
GO
CREATE TABLE rolechildrel
(
roid INT NULL,
rtroid INT NULL
)
GO
IF OBJECT_ID ('rt') IS NOT NULL
DROP TABLE rt
GO
CREATE TABLE rt
(
rtid INT NULL,
rtname VARCHAR (20) NULL
)
GO
IF OBJECT_ID ('urore') IS NOT NULL
DROP TABLE urore
GO
CREATE TABLE urore
(
uid INT NULL,
roid INT NULL
)
GO
IF OBJECT_ID ('usern') IS NOT NULL
DROP TABLE usern
GO
CREATE TABLE usern
(
uid INT NULL,
uname VARCHAR (20) NULL
)
GO
SELECT u.uname,r.roname,rt.rtname
FROM
usern u JOIN urore ur ON (u.uid = ur.uid)
JOIN role r ON (ur.roid = r.roid)
JOIN rolechild rc ON (r.roid = rc.parentroid)
JOIN rolechildrel rcl ON (rc.childroid = rcl.roid)
JOIN rt ON rcl.rtroid = rt.rtid
をここにほとんどの人がフォーマットされたテキストではなく画像たいあなたは、内側に使用しない理由 – jarlh
は、この結果を達成するために参加する(または画像へのリンクを。) –