Итак, у меня есть несколько таблиц
CREATE TABLE [dbo].[Person](
[Id] [int] IDENTITY(1,1) NOT NULL,
[FirstName] [nvarchar](max) NULL,
[LastName] [nvarchar](max) NULL,
[ManagerId] [int] NULL,
[Active] [nchar](10) NULL
)
CREATE TABLE [dbo].[LOB](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](max) NULL
)
CREATE TABLE [dbo].[PersonLOB](
[PersonId] [int] NULL,
[LOBId] [int] NULL
)
INSERT [dbo].[LOB] ([Name]) VALUES (N'Banking')
INSERT [dbo].[LOB] ([Name]) VALUES (N'Insurance')
INSERT [dbo].[LOB] ([Name]) VALUES (N'Real Estate')
INSERT [dbo].[LOB] ([Name]) VALUES (N'Retail Brokerage')
INSERT [dbo].[LOB] ([Name]) VALUES (N'Merger & Acquisition')
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Alfredo', N'Mando', NULL, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Alejandro', N'Mendoza', NULL, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Berto', N'Lao', 2, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Benjamin', N'Mindu', 2, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Ben', N'Uy', NULL, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Bernie', N'Sanders', NULL, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Benjamin', N'Santos', 3, 1)
INSERT [dbo].[Person] ([FirstName], [LastName], [ManagerId], [Active]) VALUES ( N'Cathy', N'Zaragosa', 2, 1)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (1, 1)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (2, 1)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (2, 2)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (2, 3)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (3, 2)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (4, 4)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (4, 5)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (5, 3)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (5, 4)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (6, 5)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (7, 1)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (8, 2)
INSERT [dbo].[PersonLOB] ([PersonId], [LOBId]) VALUES (8, 3)
Итак, на стороне пользовательского интерфейса отобразите образец данных
FirstName LastName LOBs ManagerName Active
Alfredo Mando Banking Y
Alejandro Mendoza Banking, Insurance Y
Berto Lao Insurance Alejando Mendoza Y
.
.
.
Итак, вопрос:
Как сделать Я выбираю набор результатов с учетом нескольких фильтров условий поиска для каждого столбца в T SQL?
Данный образец фильтра условий поиска из пользовательского интерфейса
FirstName: 'al', 'o'
LastName: 'do'
LOB: 'Banking'
Актив: 'Y'
Ожидаемый результат:
FirstName LastName LOBs ManagerName Active
Alfredo Mando Banking Y
Alejandro Mendoza Banking, Insurance Y