Comment écrire requêtes SQL - exemples détaillés

Chacun de nous fait face sur une base régulière et utilise différentes bases de données.Quand nous choisissons e-mail, nous travaillons avec la base de données.Bases de données utilisées services de recherche, des banques pour le stockage des données des clients, etc.

Mais en dépit de l'utilisation constante de la base de données, même pour de nombreux développeurs de systèmes logiciels ya beaucoup de «taches blanches» en raison de différentes interprétations des mêmes termes.Nous donnons une brève définition des termes clés base de données avant l'examen de SQL.So.Base de données

- fichier de ou un ensemble de fichiers pour stocker les structures de données ordonnées et leurs relations.Très souvent, la base de données est appelé système de gestion de base de données (SGBD).Base de données - ceci est juste un référentiel d'informations dans un format spécifique et peut travailler avec différentes bases de données.

Tableau - imaginer le dossier dans lequel les documents sont stockés, regroupés par certains attributs tels que la liste des commandes dans le dernier mois.Ceci est une table dans une base de données informatique.Un tableau distinct a son propre nom unique.Type de données

- genre d'information autorisés à être stocké dans une seule colonne ou ligne.Il peut être des nombres spécifiques ou format texte.

colonne et ligne - nous avons tous travaillé avec des feuilles de calcul, qui sont également présents dans les lignes et les colonnes.Toutes les tables de base de données relationnelles fonctionne de façon similaire.Les lignes sont parfois appelés dossiers.

clé primaire - chaque rangée peut avoir une ou plusieurs colonnes pour son identification unique.Pas de clé primaire est très difficile d'effectuer la mise à jour, modifier et supprimer les lignes requises.

Quel est SQL?

langage de requête SQL (. Eng Structured Query Language - Structured Query Language) a été conçu uniquement pour fonctionner avec des bases de données et est actuellement la norme pour toutes les bases populaires.Syntaxe compose d'un petit nombre d'opérateurs et facile à apprendre.Mais en dépit de l'apparente simplicité, il permet la création de requêtes SQL pour les opérations de base de données complexes de toute taille.

Depuis 1992, il existe une norme commune, appelée ANSI SQL.Il définit la syntaxe de base et les fonctions des opérateurs et soutenue par tous les leaders du marché des SGBD comme Oracle Microsoft SQL Server.Pensez à toutes les possibilités de la langue dans un court article est impossible, alors nous allons brièvement examiner uniquement les instructions SQL de base.Exemples démontrent la simplicité et les caractéristiques de la langue:

  • créer des bases de données et des tableaux;Données-échantillon
  • ;
  • ajout d'enregistrements;
  • modification et de suppression des informations.Types

données SQL

Tous les colonnes d'une table de base de données stockent le même type de données.Les types de données SQL sont les mêmes que dans d'autres langages de programmation.Entiers type de données

description
INT
REAL virgule flottante
TEXTE chaîne de caractères de longueur variable
DATE sqldemande "date" dans différents formats
TEMPS Temps
CHAR chaînes de texte de longueur fixe

créent des tableurs et des bases de données

créer de nouvelles bases, tables et autres demandesdans SQL Il ya deux façons: déclaration

  • SQL dans la base de données de la console
  • Utilisation des outils d'administration interactifs qui composent le serveur de base de données.

créer un nouveau opérateur de base de données CREATE DATABASE & lt; nom de la base de données & gt ;;.Comme vous pouvez le voir, la syntaxe est simple et laconique.Tables

au sein de la base de données créent instruction --CREATE TABLE avec les paramètres suivants: noms

  • nom de la table
  • et types de données de colonne

titre d'exemple, créer une marchandise de table avec les colonnes suivantes:

colonne description
commodity_id ID produit
vendor_id fournisseur ID (principaux fournisseurs de table externe)
commodity_name Nom produit
commodity_price coûté
commodity_desc Description de

créer la table:

--CREATE TABLE Commodity

(de CHAR commodity_id (15) NOT NULL,

vendor_id CHAR (15) NOT NULL,

commodity_name CHAR (254) NULL,

commodity_price DECIMAL (8,2) NULL,

commodity_desc VARCHAR (1000) NULL);Table

se compose de cinq colonnes.Après le nom est le type de colonnes de données séparées par des virgules.La valeur de la colonne peut accepter des valeurs nulles (NULL), ou doit être rempli (NOT NULL), et il est déterminé à créer la table.

données de l'échantillon de la table

d'échantillonnage des données de l'opérateur - les déclarations SQL les plus couramment utilisés.Pour plus d'informations vous avez besoin de spécifier que nous voulons pour sélectionner à partir d'une table.Tout d'abord, un exemple simple:

SELECT commodity_name de Commodity

Après l'instruction SELECT pour spécifier le nom de la colonne pour obtenir des informations, et détermine à partir de la table.Résultat

de la requête sera toutes les lignes avec des valeurs Commodity_name dans l'ordre dans lequel ils ont été inscrits dans la base de données qui estsans aucun tri.Pour organiser les résultats en utilisant un ordre d'opérateur supplémentaire PAR.

Pour interroger sur la liste des champs multiples eux séparés par des virgules, comme dans l'exemple suivant:

SELECT commodity_id, commodity_name, commodity_price de Commodity

est possible d'obtenir à la suite de la demande de toute la ligne de colonnes.A cet effet, le signe «*»:

SELECT * FROM Commodity

  • supports outre SELECT: trier les données
  • (opérateur ORDER BY)
  • choix selon les conditions (où)
  • regroupant terme (GROUP BY)

ajouter des lignes

Pour ajouter des lignes à une table aide d'instructions SQL avec l'insert de l'opérateur.L'addition peut se faire de trois façons:

  • ajouter une nouvelle ligne entière;
  • de la ligne;Résultats de la requête
  • .

pour ajouter la ligne complète doit préciser le nom de la table et les valeurs des colonnes (champs) de la nouvelle ligne.Voici un exemple:

INSERT INTO valeurs des marchandises ('106', '50', 'Coca-Cola »,« 1,68 »,« Non Alcogol,) par exemple

ajoute une table de nouveaux produits.Les valeurs sont spécifiées après VALEURS instruction pour chaque colonne.Si il n'y a aucune valeur correspondante pour une colonne, vous devez spécifier NULL.Les colonnes sont remplies avec les valeurs dans l'ordre spécifié lors de la création d'une table.

Si vous ajoutez seulement une partie de la ligne, vous devez spécifier explicitement le nom de la colonne, comme dans l'exemple:

INSERT INTO produits de base (commodity_id, vendor_id, commodity_name) VALUES

('106', '50', 'Coca-Cola',)

Nous avons introduit seulement identificateurs de produit, le fournisseur et son nom, et de mettre de côté le reste du champ vide.

Ajout des résultats de requête

INSERT principalement est utilisé pour ajouter des chaînes, mais peut être utilisé pour ajouter les résultats de l'opérateur SELECT.

Modification des données

Pour modifier les informations dans les champs de la table de base de données que vous souhaitez utiliser la mise à jour opérateur.L'opérateur peut être utilisé de deux manières:

  • met à jour toutes les lignes dans le tableau.
  • seulement une certaine ligne.

UPDATE se compose de trois éléments principaux: table

  • dans lequel vous souhaitez apporter des modifications;
  • Les noms de champs et leurs nouvelles valeurs;Conditions
  • pour sélectionner les lignes à modifier.

Prenons un exemple.Supposons produits avec id = 106 a changé le prix, de sorte que cette ligne pour mettre à jour.Nous écrivons la déclaration suivante:

UPDATE Commodity SET commodity_price = '3.2' WHERE commodity_id = '106'

Nous spécifions le nom de la table, dans notre cas, des produits de base, qui sera mis à jour, et puis après le SET - la nouvelle valeur de la colonne et de trouver l'entrée souhaitéeen spécifiant la valeur souhaitée dans WHERE ID.

Pour changer le nombre de colonnes après la SET a indiqué quelques paires de la valeur de colonne, séparés par des virgules.Voir un exemple dans lequel mis à jour le nom et le prix de la marchandise:

UPDATE Commodity SET commodity_name = 'Fanta', commodity_price = '3.2' WHERE commodity_id = '106'

Pour supprimer les informations dans la colonne, vous pouvez mettre à NULL, siIl permet à la structure de la table.Gardez à l'esprit que NULL - c'est "non" la valeur, et non nul comme texte ou des chiffres.Supprimer la description du produit:

UPDATE Commodity SET commodity_desc = NULL OÙ commodity_id = '106'

lignes Suppression de requêtes

SQL pour supprimer des lignes dans le tableau sont effectués par l'opérateur delete.Il ya deux façons d'utiliser: table

  • supprimé certaines lignes;
  • supprime toutes les lignes dans le tableau.

Exemple de suppression d'une ligne de la table:

DELETE FROM produits où commodity_id = '106'

Après DELETE FROM préciser le nom de la table où les rangées seront supprimés.La clause WHERE contient une condition sur laquelle la ligne sera sélectionné pour la suppression.Dans l'exemple que nous supprimons l'item en ligne avec ID = 106.Préciser où très important parce queprivedt passer cette déclaration pour supprimer toutes les lignes d'une table.Cela vaut pour changer les valeurs de champ.

L'instruction DELETE ne précise pas les noms de colonnes, et les méta-caractères.Il supprime complètement la ligne et la colonne de supprimer un individu, il ne peut pas.

Utilisation de SQL dans Microsoft Access

Microsoft Access est généralement utilisé de manière interactive pour créer une feuille de calcul, base de données, les changements de gestion, l'analyse des données dans la base de données et pour mettre en œuvre l'requêtes SQL Access via un générateur de requête interactive pratique (Query Designer), l'aide que vous pouvez construire et exécuter des instructions SQL immédiatement de toute complexité.

également soutenu le régime d'accès au serveur, où la base de données Access peut être utilisé comme un générateur de requêtes SQL à des sources de données ODBC.Cette fonctionnalité permet aux applications d'accès interagissent avec les bases de toute taille.

Extensions

SQL

Parce que les requêtes SQL ne possèdent pas toutes les caractéristiques des langages de programmation procéduraux, tels que les boucles, branchement, etc., les fabricants mettent au point une version de SQL de base de données améliorée.Le premier est le soutien pour les procédures stockées et les opérateurs standards des langages procéduraux.

dialectes les plus communs: Base de données

  • Oracle - PL / SQL
  • Interbase, Firebird - PSQL
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL / pgSQL.Base de données SQL

Internet

MySQL est publié sous une licence libre de GNU General Public License.Il ya une licence commerciale avec la capacité de développer des modules personnalisés.Dans le cadre de la partie la plus populaire des serveurs accumulation Internet tels que XAMPP, WAMP et LAMP, et est le développement le plus populaire des applications de base de données sur Internet.

a été développée par Sun Microsystems et est actuellement soutenu par Oracle.Prend en charge la base de données de taille jusqu'à 64 téraoctets, le standard SQL: syntaxe 2003 réplication de base de données, et les services de cloud computing.