PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Wypełnij tablicę wielowymiarową

Postgres ma dedykowaną funkcję dokładnie do tego celu:array_fill() :

Użyj go:

CREATE OR REPLACE FUNCTION teste()
  RETURNS void AS
$func$
DECLARE
    tarifas numeric[7][24] := array_fill(0, ARRAY[7,24]);
    a int;
    b int;
BEGIN
   -- do something
END
$func$  LANGUAGE plpgsql;

Notatki

  • Wymiary tablicy w numeric[7][24] to tylko dokumentacja. Podręcznik:
  • O operatorze przypisania w plpgsql::= lub = :

  • Zasadniczo nie jest możliwe bezpośrednie zapisywanie do elementu tablicy. Możesz łączyć lub dołączać / dołączać elementy. Lub przypisz tablicę jako całość. Szczegóły w instrukcji. Ale takie stwierdzenie nie jest możliwe :

    tarifas[%][%] = 0
  • Domyślna dolna granica tablicy to 1, a nie 0. Możesz jednak zdefiniować dowolny wymiar tablicy. Przykład:

    SELECT '[2:3][2:4]={{7,7,7},{7,7,7}}'::int[]
    



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Wybierz liczbę odpowiedzi MCQ na podstawie odpowiedzi na poprzednie pytanie

  2. Jak mogę zrobić mniej niż, więcej niż w polach JSON Postgres?

  3. Nie mogę połączyć mojej aplikacji Android Studio z PostgreSQL

  4. Jak stworzyć bazę danych PostgreSQL

  5. Jak przekazać STARY, NOWY i identyfikatory do WYKONANIA w funkcji wyzwalacza?