Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Utilizzare FILEGROUP_ID() per restituire l'ID di un filegroup in SQL Server

In SQL Server puoi utilizzare FILEGROUP_ID() funzione per restituire l'ID di un filegroup, in base al suo nome.

Per restituire l'ID del filegroup, passa semplicemente il suo nome alla funzione.

Esempio 1 – Query di base

Ecco un esempio da dimostrare.

USE WideWorldImporters;
SELECT FILEGROUP_ID('PRIMARY') AS Result;

Risultato:

+----------+
| Result   |
|----------|
| 1        |
+----------+

Esempio 2:più filegroup

Questo database ha tre filegroup, quindi ecco un esempio che restituisce tutti e tre.

SELECT 
  FILEGROUP_ID('PRIMARY') AS FG_1,
  FILEGROUP_ID('USERDATA') AS FG_2,
  FILEGROUP_ID('WWI_InMemory_Data') AS FG_3,
  FILEGROUP_ID('OOPS') AS FG_4;

Risultato:

+--------+--------+--------+--------+
| FG_1   | FG_2   | FG_3   | FG_4   |
|--------+--------+--------+--------|
| 1      | 2      | 3      | NULL   |
+--------+--------+--------+--------+

Qui, ho tentato di generare un quarto filegroup, ma in questo caso non esiste un filegroup con quel nome, quindi ottengo NULL per quella colonna.

Restituisci il nome del filegroup

Puoi anche usare FILEGROUP_NAME() per restituire il nome di un filegroup in base al suo ID.

Restituisci tutti i filegroup

Se vuoi restituire tutti filegroup per un determinato database, vedere Come restituire tutti i filegroup in SQL Server.

Crea un filegroup

Se vuoi creare un nuovo filegroup, vedi Come aggiungere un filegroup in SQL Server.