Возвращаемое значение функции доступа в столбце таблицы присоединения - PullRequest
0 голосов
/ 15 сентября 2010

Частичное утверждение выбора:

SELECT t1.Column1, t1.Column2, **"Column3"** = dbo.FunctionName(Column1, Column2)
  FROM Table1 t1

Теперь я хотел оставить присоединение Table2 в приведенном выше запросе, но объединение должно быть "Column3" = Table2. Column3 ; что-то наподобие приведенного ниже запроса, который не работает и как этого добиться.

SELECT t1.Column1, t1.Column2, Column3 = dbo.FunctionName(Column1, Column2),
       t2.Abc, t2.bcd
  FROM Table1 t1 LEFT OUTER JOIN Table2 t2 ON t2.Column3 = ????

Заранее спасибо.

1 Ответ

0 голосов
/ 15 сентября 2010

Вы пробовали

SELECT 
          t1.Column1, 
          t1.Column2, 
          Column3 = dbo.FunctionName(Column1, Column2)
          t2.Abc, t2.bcd
FROM
          Table1 t1 
          LEFT OUTER JOIN Table2 t2 
          ON t2.Column3 = dbo.FunctionName(t1.Column1, t1.Column2)

Это также должно работать

SELECT 
      t1.Column1, 
      t1.Column2, 
      t1.Column3,  
      t2.Abc, 
      t2.bcd
 FROM 
    Table2 t2 LEFT JOIN JOIN 
 (SELECT t1.Column1, t1.Column2, Column3 = dbo.FunctionName(Column1, Column2)
  FROM Table1 t1) t1
  ON t2.Column3 = t1.Column3
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...