Sql server 2008 在视图中合并来自不同表的数据。我的代码有什么问题?

Sql server 2008 在视图中合并来自不同表的数据。我的代码有什么问题?,sql-server-2008,view,Sql Server 2008,View,我想创建一个视图,显示车辆的详细信息和贷款金额。 我在这个视图中放置来自另一个表的[vehicle_brand]、[vehicle_type]、[Color]时遇到问题。我不知道如何组合来自不同表的数据。。。我将非常感谢你的帮助 我的表和未完成的代码视图: [dbo].[Loan]( [id_Loan] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL, [registration_number] FOREIGN KEY [char](10) NULL, [Loa

我想创建一个视图,显示车辆的详细信息和贷款金额。 我在这个视图中放置来自另一个表的[vehicle_brand]、[vehicle_type]、[Color]时遇到问题。我不知道如何组合来自不同表的数据。。。我将非常感谢你的帮助

我的表和未完成的代码视图:

[dbo].[Loan](
[id_Loan] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
[registration_number] FOREIGN KEY [char](10) NULL,
[Loan_time] [datetime] NOT NULL, ...

[dbo].[vehicle](
[registration_number] [char](10) PRIMARY KEY NOT NULL,
[id_vehicle_brand] FOREIGN KEY [int] NULL,
[id_TypuPojazdu] FOREIGN KEY [int] NULL,
[id_vehicle_color] FOREIGN KEY [int] NULL,


[dbo].[Color](
[id_vehicle_color] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
[Color] [char](20) NOT NULL,


[dbo].[vehicle_type](KEY 
[id_vehicle_type] [int] IDENTITY(1,1)PRIMARY KEY NOT NULL,
[vehicle_type] [char](20) NOT NULL


[dbo].[vehicle_brand](
[id_vehicle_brand] [int] IDENTITY(1,1) PRIMARY KEY NOT NULL,
 [vehicle_brand] [char](50) NOT NULL

由于[dbo].[Loan].RegistrationNumber可为空,而p[registration\u number]不可为空,因此会引发错误。
您可以在RegistrationNumber不为空的地方添加

Ou,谢谢。我纠正了它。但我的主要问题是来自不同表格的数据的兼容性-[车辆品牌],[车辆类型],[颜色]我不知道如何做到这一点…:/你说的兼容性是什么意思?嗯。。。我用的词不对。正如我在上面的描述中提到的,我在这个视图中放置[vehicle_brand]、[vehicle_type]、[Color]有一个问题,因为这个列来自另一个表。简而言之,我需要一个视图来显示以下列[注册号]、[车辆品牌]、[车辆类型]、[颜色]、贷款金额。创建视图视图名称,选择[注册号]、[车辆品牌]、[车辆类型]、[颜色]从注册开始…我是sql的初学者,我不知道如何才能成功地将您的建议添加到我的代码中。也许,我想再次获得一个视图,该视图将计算“贷款金额”列中的贷款金额,以及来自其他表的有关车辆[注册号]、[车辆品牌]、[车辆类型]、[颜色]的信息。
 CREATE VIEW [dbo].[v_loan_statistics ]
 AS
 with t1 ([registration_number],amount_of_loans)
 as
 (
 select [registration_number], count(*) amount_of_loans
 from [dbo].[Loan]
 group by [registration_number]
 )
 select top 100 percent t1.[registration_number],***[vehicle_brand],  
 [vehicle_type],[Color]***,t1.amount_of_loans
 from t1
 inner join [dbo].[vehicle] p
 on t1.[registration_number]=p.[registration_number]
 order by t1.[registration_number]

 GO