У меня есть две таблицы "Tbl1", которые содержат 3 строки, как показано в таблице ниже
ColNames
*********
Name
SurName
DOB
Моя вторая таблица "tbl2" Содержит информацию, связанную с Name, SurName и DOB, как показано ниже:
Name SurName DOB
***********************************
SAM billing 22/11/2000
NULL petres 22/11/2000
BILL Jones NULL
Dave NULL 22/11/2000
Гипотетически, если * tbl1 выбраны Name и DOB , я хотел бы извлечь значения NOT NULL из второй таблицы.
JOINS здесь НЕ вариантПожалуйста, не предлагайте это.извините ....
На данный момент я создал хранимую процедуру, которая сохранила Name и DOB как строки из tbl1 в #temp_table.
Теперь я хочу создать какую-то хранимую процедуру, которая создаст для меня запрос, который выберет значения "NOT NULL" из tbl2.
ALTER PROCEDURE spShowRuleValues
AS
BEGIN
SELECT 'SELECT * FROM ' + 'tbl2' + ' WHERE '+
stuff((SELECT ', ' + Header FROM #temp_table
FOR Xml path('')
),1,2,'') + ' IS NOT NULL ';
END
execute spShowRuleValues
Но после выполнения этой хранимой процедурыЯ могу только разработать запрос:
`SELECT * FROM tbl2 WHERE Name, DOB IS NOT NULL `
Как я могу построить запрос таким образом, чтобы он создавался как:
SELECT * FROM tbl2 WHERE Name IS NOT NULL AND
DOB IS NOT NULL
, а затем выполнить егозапрос, чтобы получить результаты из таблицы tbl1, исключая значения NOT NULL.
Пожалуйста, не стесняйтесь предложить другой подход, который я могу использовать для построения желаемого запроса.Спасибо за ваше время и внимание заранее.