Maison >base de données >tutoriel mysql >Comment créer correctement des tables temporaires en SQL ?

Comment créer correctement des tables temporaires en SQL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-31 16:47:16331parcourir

How to Correctly Create Temporary Tables in SQL?

Création de tables temporaires en SQL : comprendre la syntaxe correcte

En SQL, la création de tables temporaires peut être une technique utile pour gérer des données et effectuer des opérations spécifiques. Cependant, il est important d'utiliser la syntaxe appropriée pour garantir que les tables temporaires sont créées correctement.

Le problème : syntaxe incorrecte pour la création de tables temporaires

Certaines tentatives de création de tables temporaires peuvent échouer en raison de erreurs syntaxe. Par exemple, la requête suivante peut générer une erreur :

CREATE TABLE temp1
(Select 
    egauge.dataid,
    egauge.register_type,
    egauge.timestamp_localtime,
    egauge.read_value_avg
from rawdata.egauge
where register_type like '%gen%'
order by dataid, timestamp_localtime )

Cette requête vise à créer une table temporaire appelée "temp1" qui sélectionne les données de la table "egauge" en fonction du champ "register_type". Cependant, il lui manque la syntaxe correcte pour créer des tables temporaires.

La solution : comprendre CREATE TABLE AS

Pour créer correctement des tables temporaires, vous devez utiliser la syntaxe "CREATE TABLE AS". Cette syntaxe vous permet de créer une table temporaire et d'y copier des données en une seule étape. Voici comment modifier la requête pour créer une table temporaire avec succès :

CREATE TEMP TABLE temp1 AS
SELECT dataid
     , register_type
     , timestamp_localtime
     , read_value_avg
FROM   rawdata.egauge
WHERE  register_type LIKE '%gen%'
ORDER  BY dataid, timestamp_localtime;

Considérations supplémentaires

Outre la syntaxe correcte, il est important de se rappeler que les tables temporaires :

  • Sont stockés dans la RAM pour un accès plus rapide (s'il y a suffisamment de RAM).
  • Sont visibles uniquement dans la session en cours et sont automatiquement supprimés à la fin de la session.
  • Peut être créé avec "ON COMMIT DROP" pour être supprimé à la fin d'une transaction.

En comprenant la syntaxe correcte et considérations pour la création de tables temporaires, vous pouvez les exploiter efficacement pour diverses tâches de gestion de données dans SQL.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn