Frequently asked questions - Base
TDF LibreOffice Document Liberation Project Blogs communautaires Weblate Nextcloud Redmine Ask LibreOffice Donner
Comment créer une table à partir d'un SELECT ?
Il est possible de créer une table à partir d'un SELECT via le menu
▸ en exécutant une instruction du type :SELECT <NomChamp> [, ...] INTO CACHED "NomNouvelleTable" FROM "NomTableInitiale" [WHERE <expression>]
On souhaite par exemple créer une nouvelle table à partir de cette sélection :
Le SQL à partir duquel on souhaite créer une nouvelle table :
SELECT "ID_Table", "Nom", "DateNaissance" FROM "Table1" WHERE "Nom" LIKE 'D%'
Pour créer la table, exécuter via le menu
▸ :Ci-dessous le SQL à exécuter :
SELECT "Nom", "DateNaissance" INTO CACHED "Nouvelle" FROM "Table1" WHERE "Nom" LIKE 'D%'
Nota
- La nouvelle table n'est pas immédiatement affichée parmi les objets Table : il est nécessaire de lancer ▸ (cette commande n'est disponible que lorsque les objets Tables sont affichés).
- La table sera par définition le résultat d'un SELECT avec toutes les limites induites : pas de création de clé primaire notamment.
- Ceci est la raison pour laquelle le SQL ci-dessus n'inclut pas dans le SELECT le champ ID_Table.
- Si on souhaite une clé en Auto-Valeur pour la nouvelle table il sera possible d'éditer la table pour ajouter ce champ.
- Si la clé ne doit pas être définie en Auto-Valeur il sera bien sûr possible de l'inclure dans le SELECT