Maison >base de données >tutoriel mysql >Existe-t-il une syntaxe SQL universelle pour insérer des valeurs à partir d'une sous-requête ?

Existe-t-il une syntaxe SQL universelle pour insérer des valeurs à partir d'une sous-requête ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-24 03:56:08288parcourir

Is There a Universal SQL Syntax for Inserting Values from a Subquery?

SQL inter-bases de données : insertion de données à partir de sous-requêtes

Le déplacement de données entre les tables est une tâche fondamentale de base de données. Cependant, la syntaxe SQL peut différer considérablement selon les systèmes de bases de données. Cet article explore une approche standardisée pour insérer des valeurs à partir d'une sous-requête, garantissant la compatibilité entre différents moteurs de base de données.

Une solution SQL universelle

La norme ANSI SQL fournit une méthode cohérente pour insérer des données à partir d'une sous-requête :

<code class="language-sql">INSERT INTO table1 (column1)
SELECT col1
FROM table2;</code>

Cette approche est largement prise en charge par de nombreux systèmes de bases de données, notamment :

  • Oracle
  • Microsoft SQL Server
  • MySQL
  • PostgreSQL
  • SQLite v3
  • Teradata
  • DB2
  • Sybase
  • Verticale
  • HSQLDB
  • H2
  • AWS Redshift
  • SAP HANA
  • Clé Google

Exemple pratique

Pour remplir le champ column1 de table1 avec les données du champ col1 de table2, utilisez la requête suivante :

<code class="language-sql">INSERT INTO table1 (column1)
SELECT col1
FROM table2;</code>

Cela crée efficacement de nouvelles entrées dans table1, reflétant les valeurs col1 de table2.

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