объяснение хранимой процедуры / запроса SQL Server - PullRequest
3 голосов
/ 20 декабря 2011

Я надеялся, что кто-нибудь сможет объяснить этот фрагмент хранимой процедуры SQL Server 2005, входящей в состав запроса select - я компетентен в php mysql, но ASP / SQL Server не является моей сильной стороной!

+RTRIM(ISNULL(r.country,''))+'|'
+RTRIM(ISNULL(r.phone,''))+'|'
+RTRIM(ISNULL(r.fax,''))+'|'
+dbo.UKBN(RTRIM(ISNULL(r.bn,'')))+'|'
+RTRIM(ISNULL(r.bn,''))+'|'
+RTRIM(ISNULL(CAST (r.eventid AS varchar(5)),''))
)

Я понимаю, что db vars сбрасывает их, если они равны нулю, и обрезает их, а затем объединяет их вместе, разделив трубу.

Это бит, который я не получаю

+dbo.UKBN(RTRIM(ISNULL(r.bn,'')))+'|'

Кажется, чтобы проверить, является ли r.bn нулевым, затем сбрасывается на '', если так, затем выполняет обрезку, но тогда я не понимаю, что такое dbo.UKBN / делает ????

Это не похожебыть таблицей / var или другой хранимой процедурой - может кто-нибудь объяснить, что, вероятно, будет / делать в этом макете.

Ответы [ 3 ]

6 голосов
/ 20 декабря 2011

dbo.UKIPBN - скалярная пользовательская функция. В Management Studio загляните под Programmability -> Functions -> Scalar-Valued Functions, чтобы найти его.

2 голосов
/ 20 декабря 2011

dbo.UKIPBN является определяемой пользователем функцией.И это скалярная функция.Попробуйте Programmability -> Functions -> Scalar-Valued Functions найти его.

1 голос
/ 20 декабря 2011
...