1.join语句
Sql join语句用来合并两个或多个表中的记录。ANSI标准SQL语句中有四种JOIN:INNER,OUTER,LEFTER,RIGHT,一个表或视图也可以可以和它自身做JOIN操作。下面举例说明。下面所举的例子使用的表有Employee和Department,在这两个表中Department.DepartmentID是主键,Employee.DepartmentID是外键。
图1—Employee表
| 
 LastName  | 
 DepartmentID  | 
 Country  | 
 EmployeeID  | 
| 
 John  | 
 NULL  | 
 Germany  | 
 306  | 
| 
 Jones  | 
 33  | 
 Australia  | 
 124  | 
| 
 Rafferty  | 
 31  | 
 Australia  | 
 123  | 
| 
 Robinson  | 
 34  | 
 United States  | 
 201  | 
| 
 Smith  | 
 34  | 
 Germany  | 
 305  | 
图2—Department表
| 
 DepartmentID  | 
 DepartmentName  | 
| 
 31  | 
 Sales  | 
| 
 33  | 
 Engineering  | 
| 
 34  | 
 Clerical  | 
| 
 35  | 
 Marketing  | 
下面是建表和数据语句:
USE [AppressFinancial]
GO
/****** Object: Table [dbo].[department] Script Date: 08/11/2010 15:18:33 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[department](
[DepartmentID] [int] NULL,
[DepartmentName] [varchar](25) NULL,
UNIQUE NONCLUSTERED
(
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
GO
/****** Object: Table [dbo].[department] Script Date: 08/11/2010 15:18:33 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[department](
[DepartmentID] [int] NULL,
[DepartmentName] [varchar](25) NULL,
UNIQUE NONCLUSTERED
(
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
GO
/****** Object: Table [dbo].[department] Script Date: 08/11/2010 15:18:33 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[department](
[DepartmentID] [int] NULL,
[DepartmentName] [varchar](25) NULL,
UNIQUE NONCLUSTERED
(
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
                    
                

                
            
        
浙公网安备 33010602011771号