A表
名称 产地 ID 编码
茄子 1 111 aaa
萝卜 2 222 bbb
白菜 3 333 cccB表
检测项目 检测结果 检验时间 参照标准 检测编码 名称
77 88 99 1010 1111 茄子
66 22 55 666 444 萝卜
WW EEE 999 888 333 白菜C表
物流方式 车牌号 司机姓名 名称
abab baba afaf 茄子
qeqe eqeq dfdf 萝卜
erer rere uuu 白菜想要查询编码为“bbb”的产品的所有信息我应该用什么语句来关联着三个表啊QAQ??
本来想用“union”结果告诉我必须有相同数目的表达方式
名称 产地 ID 编码
茄子 1 111 aaa
萝卜 2 222 bbb
白菜 3 333 cccB表
检测项目 检测结果 检验时间 参照标准 检测编码 名称
77 88 99 1010 1111 茄子
66 22 55 666 444 萝卜
WW EEE 999 888 333 白菜C表
物流方式 车牌号 司机姓名 名称
abab baba afaf 茄子
qeqe eqeq dfdf 萝卜
erer rere uuu 白菜想要查询编码为“bbb”的产品的所有信息我应该用什么语句来关联着三个表啊QAQ??
本来想用“union”结果告诉我必须有相同数目的表达方式
GO
IF OBJECT_ID('dbo.[A]') IS NOT NULL
DROP TABLE dbo.[A]
GO
CREATE TABLE dbo.[A](
[名称] NVARCHAR(MAX)
,[产地] NVARCHAR(MAX)
,[ID] NVARCHAR(MAX)
,[编码] NVARCHAR(MAX)
)
GO
SET NOCOUNT ON
INSERT INTO dbo.[A] VALUES(N'茄子',N'1',N'111',N'aaa')
INSERT INTO dbo.[A] VALUES(N'萝卜',N'2',N'222',N'bbb')
INSERT INTO dbo.[A] VALUES(N'白菜',N'3',N'333',N'ccc')
GO
IF OBJECT_ID('dbo.[B]') IS NOT NULL
DROP TABLE dbo.[B]
GO
CREATE TABLE dbo.[B](
[检测项目] NVARCHAR(MAX)
,[检测结果] NVARCHAR(MAX)
,[检验时间] NVARCHAR(MAX)
,[参照标准] NVARCHAR(MAX)
,[检测编码] NVARCHAR(MAX)
,[名称] NVARCHAR(MAX)
)
GO
SET NOCOUNT ON
INSERT INTO dbo.[B] VALUES(N'77',N'88',N'99',N'1010',N'1111',N'茄子')
INSERT INTO dbo.[B] VALUES(N'66',N'22',N'55',N'666',N'444',N'萝卜')
INSERT INTO dbo.[B] VALUES(N'WW',N'EEE',N'999',N'888',N'333',N'白菜')
GO
IF OBJECT_ID('dbo.[C]') IS NOT NULL
DROP TABLE dbo.[C]
GO
CREATE TABLE dbo.[C](
[物流方式] NVARCHAR(MAX)
,[车牌号] NVARCHAR(MAX)
,[司机姓名] NVARCHAR(MAX)
,[名称] NVARCHAR(MAX)
)
GO
SET NOCOUNT ON
INSERT INTO dbo.[C] VALUES(N'abab',N'baba',N'afaf',N'茄子')
INSERT INTO dbo.[C] VALUES(N'qeqe',N'eqeq',N'dfdf',N'萝卜')
INSERT INTO dbo.[C] VALUES(N'erer',N'rere',N'uuu',N'白菜')
-------- 以上为测试表及测试数据 -----------
SELECT *
FROM A INNER JOIN B ON A.名称=B.名称
INNER JOIN C ON A.名称=C.名称不过, 这个题不太好, 一般表之间关联, 需要用 id 。
select * from A
inner join A.名称=B.名称
inner join A.名称=C.名称
话说你这个表产品名称是主键?名称重复怎么办?用内码做关联比较好啊
inner join B on A.名称=B.名称
inner join C on A.名称=C.名称