Pracuję nad funkcją, która pozwala mi dodać indeks, jeśli nie istnieje. Mam problem z tym, że nie mogę uzyskać listy indeksów do porównania. jakieś pomysły? Jest to podobny problem do tworzenia kolumny, który został rozwiązany za pomocą tego kodu:
Funkcja wykonuje określoną pracę, zwykle przyjmując parametry jako dane wejściowe. Pod względem baz danych mogą one być specyficzne dla SQL lub dostawcy bazy danych.
Pracuję nad funkcją, która pozwala mi dodać indeks, jeśli nie istnieje. Mam problem z tym, że nie mogę uzyskać listy indeksów do porównania. jakieś pomysły? Jest to podobny problem do tworzenia kolumny, który został rozwiązany za pomocą tego kodu:
Muszę obliczyć sumę kroczącą w zakresie dat. Aby to zilustrować, korzystając z przykładowej bazy danych AdventureWorks , następująca hipotetyczna składnia zrobiłaby dokładnie to, czego potrzebuję: SELECT TH.ProductID, TH.TransactionDate, TH.ActualCost, RollingSum45 = SUM(TH.ActualCost) OVER (...
Mam funkcję zdefiniowaną przez użytkownika: create function ut_FooFunc(@fooID bigint, @anotherParam tinyint) returns @tbl Table (Field1 int, Field2 varchar(100)) as begin -- blah blah end Teraz chcę dołączyć do tego na innym stole, na przykład: select f.ID, f.Desc, u.Field1, u.Field2 from Foo f...
Powszechnie wiadomo, że SCHEMABINDINGfunkcja może uniknąć niepotrzebnego buforowania w planach aktualizacji: Jeśli używasz prostych UDF T-SQL, które nie dotykają żadnych tabel (tj. Nie mają dostępu do danych), upewnij się, że określiłeś tę SCHEMABINDINGopcję podczas tworzenia UDF. Spowoduje to...
Wygląda na to, że MySQLnie obsługuje funkcji okna. Np. Prosty: COUNT(*) OVER() AS cntnie działa. Nie jestem pewien, czy dotyczy to również wersji komercyjnej (zakładam, że wersja społeczności ma ograniczony podzbiór). Jeśli nie, w jaki sposób można obejść tę brakującą...
Czy w Postgres przygotowane zapytania i funkcje zdefiniowane przez użytkownika są równoważne jako mechanizm zabezpieczający przed wstrzyknięciem SQL ? Czy są jakieś zalety jednego podejścia względem
Wiele napisano o zagrożeniach skalarnych UDF w SQL Server. Przypadkowe wyszukiwanie zwróci mnóstwo wyników. Są jednak miejsca, w których Skalarny UDF jest jedyną opcją. Na przykład: w przypadku XML: XQuery nie może być użyty jako obliczona definicja kolumny. Jedną z udokumentowanych przez...
Muszę przypisać wartości do 2 zmiennych, jak poniżej w funkcji Postgres. a := select col1 from tbl where ... b := select col2 from tbl where ... Jak mogę przypisać 2 wartości do 2 zmiennych w jednym poleceniu? Lubić a,b := select col1,col2 from tbl where
Używam PostgreSQL 9.1 i mam tabelę użytkowników z loginkolumną. W nazwach logowania rozróżniana jest wielkość liter, na przykład Bob, MikE, John. Chciałbym przekształcić wszystkie te rekordy w małe litery. Jak mogę to
Mam tabelę z kolumną ciągów i predykatem, który sprawdza wiersze o określonej długości. W SQL Server 2014 widzę szacunkową wartość 1 wiersza bez względu na sprawdzaną długość. Daje to bardzo kiepskie plany, ponieważ w rzeczywistości są tysiące, a nawet miliony wierszy, a SQL Server decyduje się...
Cel, powód Podczas próby utworzenia testowego przykładu funkcji samodzielnego odwoływania się jedna wersja zawiedzie, a inna się powiedzie. Jedyną różnicą jest dodanie SELECTdo treści funkcji, co skutkuje innym planem wykonania dla obu. Funkcja, która działa CREATE FUNCTION dbo.test5(@i...
Jestem początkującym w języku T-SQL. Chcę zdecydować, czy ciąg wejściowy jest palindromem, z wynikiem = 0, jeśli nie jest, a wyjście = 1, jeśli tak jest. Nadal zastanawiam się nad składnią. Nie dostaję nawet komunikatu o błędzie. Szukam różnych rozwiązań i informacji zwrotnych, aby lepiej zrozumieć...
Funkcja zawierająca wiele instrukcji o wartościach w tabeli zwraca wynik w zmiennej tabeli. Czy wyniki te są kiedykolwiek ponownie wykorzystywane, czy też funkcja jest zawsze w pełni oceniana przy każdym
W SQL Server 2008 używam RANK() OVER (PARTITION BY Col2 ORDER BY Col3 DESC)do zwracania zestawu danych za pomocą RANK. Ale mam setki rekordów dla każdej partycji, więc otrzymam wartości od rangi 1, 2, 3 ...... 999. Ale chcę tylko do 2 RANKsw każdym PARTITION. Przykład: ID Name Score Subject 1 Joe...
Ponowne napisanie pełnego pytania Szukam funkcji agregującej First (). Tutaj znalazłem coś, co prawie działa: CREATE OR REPLACE FUNCTION public.first_agg ( anyelement, anyelement ) RETURNS anyelement LANGUAGE sql IMMUTABLE STRICT AS $$ SELECT $1; $$; -- And then wrap an aggregate around...
Czy robię to dobrze...? Mam funkcję, która zwraca pieniądze ... 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...
Podczas profilowania bazy danych natknąłem się na widok odwołujący się do niektórych niedeterministycznych funkcji, do których dostęp uzyskuje się 1000–2500 razy na minutę dla każdego połączenia w puli tej aplikacji. Prosty SELECTz widoku daje następujący plan wykonania: To wydaje się być...
Zastanawiam się, czy konieczne jest zapisanie zatwierdzenia po wstawieniu / usunięciu / aktualizacji w funkcji / procedurze? Przykład: create or replace function test_fun return number is begin delete from a; return 0; end; lub procedura create or replace procedure aud_clear_pro as begin...
Ostatnio przeglądałem dość stare procedury składowane napisane dla SQL Server 2005 i zauważyłem coś, czego nie rozumiem. Wydaje się, że to jakiś rodzaj wywołania funkcji. Próbka: SELECT o.name, o.type_desc, o.create_date FROM sys.objects o WHERE o.create_date < {fn Now()} -1; Spowoduje to...
Korzystam z funkcji PL / pgSQL w PostgreSQL 9.3 z kilkoma złożonymi zapytaniami wewnątrz: create function f1() returns integer as $$ declare event tablename%ROWTYPE; .... .... begin FOR event IN SELECT * FROM tablename WHERE condition LOOP EXECUTE 'SELECT f2(event.columnname)' INTO...