Вопросы с тегом «functions»

Функция выполняет определенную работу, обычно принимая параметры в качестве входных данных. С точки зрения баз данных они могут быть специфическими для SQL или поставщика базы данных.

2
Создать индекс, если он не существует
Я работаю над функцией, которая позволяет мне добавить индекс, если он не существует. Я столкнулся с проблемой, что я не могу получить список индексов для сравнения. есть идеи? Эта проблема аналогична проблеме создания столбца, которая решается с помощью следующего кода: https://stackoverflow.com/a/12603892/368511

2
Как объединить таблицу с табличной функцией?
У меня есть пользовательская функция: create function ut_FooFunc(@fooID bigint, @anotherParam tinyint) returns @tbl Table (Field1 int, Field2 varchar(100)) as begin -- blah blah end Теперь я хочу присоединиться к этому на другом столе, вот так: select f.ID, f.Desc, u.Field1, u.Field2 from Foo f join ut_FooFunc(f.ID, 1) u -- doesn't work …

1
Есть ли какая-либо польза от SCHEMABINDING помимо функции Halloween Protection?
Общеизвестно, что SCHEMABINDINGфункция может избежать ненужной буферизации в планах обновления: Если вы используете простые пользовательские функции T-SQL, которые не касаются каких-либо таблиц (т. Е. Не обращаются к данным), убедитесь, что вы указали эту SCHEMABINDINGопцию во время создания пользовательских функций. Это сделает привязку к схеме UDF и обеспечит, чтобы оптимизатор запросов …

1
SQL-инъекция в функции Postgres против подготовленных запросов
В Postgres подготовленные запросы и пользовательские функции эквивалентны как механизм защиты от внедрения SQL ? Есть ли конкретные преимущества в одном подходе по сравнению с другим?

2
Есть ли способ предотвратить скалярные UDF в вычисляемых столбцах от запрета параллелизма?
Много написано об опасностях скалярных пользовательских функций в SQL Server. Случайный поиск вернет кучу результатов. Однако есть несколько мест, где Scalar UDF - единственный вариант. Как пример: при работе с XML: XQuery не может использоваться как определение вычисляемого столбца. Одна из возможностей, задокументированных Microsoft, заключается в использовании Scalar UDF для …

1
Преобразовать все записи столбцов в нижний регистр
Я использую PostgreSQL 9.1 и у меня есть таблица пользователей с loginколонкой. имена входа чувствительны к регистру, например, Bob, MikE, john. Я хотел бы преобразовать все эти записи в нижний регистр. Как я могу это сделать?

1
Функция Postgres назначает результаты запроса нескольким переменным
Мне нужно присвоить значения переменной 2, как показано ниже в функции Postgres. a := select col1 from tbl where ... b := select col2 from tbl where ... Как я могу назначить 2 значения для 2 переменных в одной строке команды? подобно a,b := select col1,col2 from tbl where ...

2
Почему функция LEN () сильно недооценивает количество элементов в SQL Server 2014?
У меня есть таблица со строковым столбцом и предикатом, который проверяет строки определенной длины. В SQL Server 2014 я вижу оценку в 1 строку независимо от длины, которую я проверяю. Это приводит к очень плохим планам, потому что на самом деле есть тысячи или даже миллионы строк, и SQL Server …

1
Превышен уровень вложенности скалярных функций при использовании ссылки
Цель При попытке создать тестовый пример функции, ссылающейся на себя, одна версия завершается ошибкой, а другая - успешно. Единственное отличие заключается в добавлении SELECTв тело функции, что приводит к разному плану выполнения для обоих. Функция, которая работает CREATE FUNCTION dbo.test5(@i int) RETURNS INT AS BEGIN RETURN( SELECT TOP 1 CASE …

9
Проверьте, является ли строка палиндромом, используя T-SQL
Я новичок в T-SQL. Я хочу решить, является ли входная строка палиндромом, с output = 0, если это не так, и output = 1, если это так. Я все еще выясняю синтаксис. Я даже не получаю сообщение об ошибке. Я ищу различные решения и отзывы, чтобы лучше понять и понять, …

3
Как предоставить разрешения для табличной функции
Я делаю это правильно ...? У меня есть функция, которая возвращает деньги ... CREATE FUNCTION functionName( @a_principal money, @a_from_date datetime, @a_to_date datetime, @a_rate float ) RETURNS money AS BEGIN DECLARE @v_dint money set @v_dint = computation_here set @v_dint = round(@v_dint, 2) RETURN @v_dint END GO Grant execute on functionName to …

3
Есть ли в PostgreSQL агрегатная функция first-) безопасной для типов?
Полный вопрос переписать Я ищу агрегатную функцию First (). Здесь я нашел то, что почти работает: CREATE OR REPLACE FUNCTION public.first_agg ( anyelement, anyelement ) RETURNS anyelement LANGUAGE sql IMMUTABLE STRICT AS $$ SELECT $1; $$; -- And then wrap an aggregate around it CREATE AGGREGATE public.first ( sfunc = …

1
SQL Server - обработка локализации строк во вложенных недетерминированных стеках представлений
При профилировании базы данных я столкнулся с представлением, которое ссылается на некоторые недетерминированные функции, к которым обращаются 1000-2500 раз в минуту для каждого соединения в пуле этого приложения. Простое SELECTпредставление дает следующий план выполнения: Это выглядит как сложный план для представления, в котором менее тысячи строк, в которых один или …

2
Необходим ли коммит после операции DML в функции / процедуре?
Интересно узнать, нужно ли писать коммит после вставки / удаления / обновления в функции / процедуре? Пример: create or replace function test_fun return number is begin delete from a; return 0; end; или процедура create or replace procedure aud_clear_pro as begin delete from a; end; нужно ли фиксировать после удаления? …

1
Как работает этот синтаксис? {fn CurDate ()} или {fn Now ()} и т. д.
Недавно я просматривал довольно старые хранимые процедуры, написанные для SQL Server 2005, и заметил кое-что, чего не понимаю. Похоже, это какой-то тип вызова функции. Образец: SELECT o.name, o.type_desc, o.create_date FROM sys.objects o WHERE o.create_date < {fn Now()} -1; Это будет отображать все строки, sys.objectsкоторые имеют create_dateдо 24 часов назад. Если …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.