HCatalog - Visualizza

Questo capitolo descrive come creare e gestire un file viewin HCatalog. Le visualizzazioni del database vengono create utilizzando ilCREATE VIEWdichiarazione. Le visualizzazioni possono essere create da una singola tabella, più tabelle o un'altra visualizzazione.

Per creare una visualizzazione, un utente deve disporre dei privilegi di sistema appropriati in base all'implementazione specifica.

Crea istruzione vista

CREATE VIEWcrea una vista con il nome specificato. Viene generato un errore se esiste già una tabella o una vista con lo stesso nome. Puoi usareIF NOT EXISTS per saltare l'errore.

Se non vengono forniti nomi di colonna, i nomi delle colonne della vista verranno derivati ​​automaticamente dal file defining SELECT expression.

Note - Se SELECT contiene espressioni scalari prive di alias come x + y, i nomi delle colonne della vista risultante verranno generati nella forma _C0, _C1, ecc.

Quando si rinominano le colonne, possono essere forniti anche commenti di colonna. I commenti non vengono ereditati automaticamente dalle colonne sottostanti.

Un'istruzione CREATE VIEW fallirà se la visualizzazione è defining SELECT expression è invalido.

Sintassi

CREATE VIEW [IF NOT EXISTS] [db_name.]view_name [(column_name [COMMENT column_comment], ...) ]
[COMMENT view_comment]
[TBLPROPERTIES (property_name = property_value, ...)]
AS SELECT ...;

Esempio

Di seguito sono riportati i dati della tabella dei dipendenti. Vediamo ora come creare una vista denominataEmp_Deg_View contenente i campi id, nome, designazione e stipendio di un dipendente con uno stipendio superiore a 35.000.

+------+-------------+--------+-------------------+-------+
|  ID  |    Name     | Salary |    Designation    | Dept  |
+------+-------------+--------+-------------------+-------+
| 1201 |    Gopal    | 45000  | Technical manager |  TP   |
| 1202 |   Manisha   | 45000  | Proofreader       |  PR   |
| 1203 | Masthanvali | 30000  | Technical writer  |  TP   |
| 1204 |    Kiran    | 40000  | Hr Admin          |  HR   |
| 1205 |   Kranthi   | 30000  | Op Admin          | Admin |
+------+-------------+--------+-------------------+-------+

Quello che segue è il comando per creare una vista basata sui dati sopra indicati.

./hcat –e "CREATE VIEW Emp_Deg_View (salary COMMENT ' salary more than 35,000')
   AS SELECT id, name, salary, designation FROM employee WHERE salary ≥ 35000;"

Produzione

OK
Time taken: 5.3 seconds

Istruzione Drop View

DROP VIEW rimuove i metadati per la vista specificata. Quando si rilascia una vista a cui fanno riferimento altre viste, non viene fornito alcun avviso (le viste dipendenti rimangono sospese come non valide e devono essere eliminate o ricreate dall'utente).

Sintassi

DROP VIEW [IF EXISTS] view_name;

Esempio

Il comando seguente viene utilizzato per eliminare una vista denominata Emp_Deg_View.

DROP VIEW Emp_Deg_View;