Database
 sql >> Baza danych >  >> RDS >> Database

Znajdź kolumny zwrócone przez funkcję wartościującą tabelę (przykłady T-SQL)

W SQL Server można użyć języka Transact-SQL ROUTINE_COLUMNS widok schematu informacji o systemie, aby znaleźć kolumny zwrócone przez funkcję o wartościach w tabeli.

Dokładniej, zwraca jeden wiersz na każdą kolumnę zwróconą przez funkcje z wartościami w tabeli, do których bieżący użytkownik może uzyskać dostęp w bieżącej bazie danych.

Aby użyć tego widoku, określ w pełni kwalifikowaną nazwę INFORMATION_SCHEMA.ROUTINE_COLUMNS .

Przykład 1 – Podstawowe użycie

Oto przykład.

SELECT TABLE_CATALOG AS [Baza danych], TABLE_SCHEMA AS [Schemat], TABLE_NAME AS [Funkcja], COLUMN_NAME AS [Kolumna], DATA_TYPE AS [Typ danych], CHARACTER_MAXIMUM_LENGTH AS [Maksymalna długość znaku] FROM INFORMATION_SCHEMA.ROUTINE_COLUMNS;> 

Wynik:

+------------+-----------+-----------------------+-- -------+--------------+------------------------+| Baza danych | Schemat | Funkcja | Kolumna | Typ danych | Maksymalna długość znaku ||-----------+-----------+-----------------------+- --------+--------------+--------------------|| Muzyka | dbo | ufn_AlbumsByGenre | Nazwa wykonawcy | nvarchar | 255 || Muzyka | dbo | ufn_AlbumsByGenre | NazwaAlbumu | nvarchar | 255 || Muzyka | dbo | ufn_AlbumsByGenre | Gatunek | nvarchar | 50 |+-------------+-----------+------------------------+---- ---------+--------------+-------------------+

Te wyniki pokazują, że w bazie danych mam dostęp tylko do jednej funkcji z wartościami tabeli, która zwraca trzy kolumny.

W tym przykładzie wybrałem zwrócenie tylko sześciu kolumn z widoku. Poniższy przykład wyświetla wszystkie kolumny zwrócone przez widok.

Przykład 2 – Zwróć wszystkie kolumny z widoku

W tym przykładzie uwzględniam wszystkie kolumny, które zwraca widok. Używam również wyjścia pionowego, aby nie trzeba było przewijać w poziomie. Ponadto, ze względu na zwięzłość, określam, aby widok zwracał informacje o tylko jednej kolumnie (dlatego zwracany jest tylko jeden wiersz).

SELECT * FROM INFORMATION_SCHEMA.ROUTINE_COLUMNSWHERE TABLE_NAME ='ufn_AlbumsByGenre'AND COLUMN_NAME ='Nazwa wykonawcy';

Wynik (przy użyciu wyjścia pionowego):

TABELA_KATALOGU | MusicTABLE_SCHEMA | dboTABLE_NAME | ufn_AlbumsByGenreCOLUMN_NAME | Nazwa wykonawcyORDINAL_POSITION | 1COLUMN_DEFAULT | NULLIS_NULLABLE | NODATA_TYPE | nvarcharCHARACTER_MAXIMUM_LENGTH | 255CHARACTER_OCTET_LENGTH | 510NUMERIC_PRECISION | NULLNUMERIC_PRECISION_RADIX | NULLNUMERIC_SCALE | NULLDATETIME_PRECISION | NULLCHARACTER_SET_CATALOG | NULLCHARACTER_SET_SCHEMA | NULLCHARACTER_SET_NAME | UNICODECOLLATION_CATALOG | NULLCOLLATION_SCHEMA | NULLCOLLATION_NAME | SQL_Latin1_General_CP1_CI_ASDOMAIN_CATALOG | NULLDOMAIN_SCHEMA | NULLDOMAIN_NAME | NULL

Zapoznaj się z dokumentacją firmy Microsoft, aby uzyskać informacje o każdej kolumnie zwróconej przez ten widok.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak napisać klauzulę ORDER BY z wyjątkami za pomocą SQL?

  2. Jak utworzyć dokument Excel z programu Java za pomocą Apache POI

  3. Notacja IDEF1X

  4. Co to jest indeks w SQL?

  5. Sekrety domina, czyli model danych gry w domino