Bienvenue sur PostGIS.fr

Bienvenue sur PostGIS.fr , le site de la communauté des utilisateurs francophones de PostGIS.

PostGIS ajoute le support d'objets géographique à la base de données PostgreSQL. En effet, PostGIS "spatialise" le serverur PostgreSQL, ce qui permet de l'utiliser comme une base de données SIG.

Maintenu à jour, en fonction de nos disponibilités et des diverses sorties des outils que nous testons, nous vous proposons l'ensemble de nos travaux publiés en langue française.


Ignore:
Timestamp:
23/09/2011 15:36:21 (13 years ago)
Author:
djay
Message:

Ajouter quelques traductions.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/workshop-foss4g/simple_sql.rst

    r1 r19  
    11.. _simple_sql: 
    22 
    3 Section 6: Simple SQL 
    4 ===================== 
     3Partie 6 : requêtes SQL simples 
     4=============================== 
    55 
    6 :term:`SQL`, or "Structured Query Language", is a means of asking questions of, and updating data in, relational databases. You have already seen SQL when we created our first database.  Recall: 
     6:term:`SQL`, pour "Structured Query Language", définit comment interroger et mettre des données dans une base. Vous vez déjà du SQL lorsque nous avons notre premiÚre base de données.  Rappel: 
    77 
    88.. code-block:: sql 
     
    1010   SELECT postgis_full_version(); 
    1111 
    12 But that was a question about the database.  Now that we've loaded data into our database, let's use SQL to ask questions of the data! For example, 
     12Mais ici c'était une question à propose de la base de données. Maintenant que nous avons carger des données dans notre base, essayons d'utiliser SQL pour interroger les données ! Par exemple, 
    1313 
    14   "What are the names of all the neighborhoods in New York City?" 
     14  "Quel sont les noms des quartier de la ville de New York ?" 
    1515   
    16 Open up the SQL query window in pgAdmin by clicking the SQL button 
     16Ouvrez une fenêtre SQL depuis pgAdmin en cliquant sur le bouton SQL 
    1717 
    1818.. image:: ./screenshots/pgadmin_05.png 
    1919 
    20 then enter the following query in to the query window 
     20Puis saisissez la requête suivante dans la fenêtre 
    2121 
    2222.. code-block:: sql 
     
    2424  SELECT name FROM nyc_neighborhoods; 
    2525   
    26 and click the **Execute Query** button (the green triangle). 
     26et cliquez sur le bouton **Execute Query** (le triangle vert). 
    2727   
    2828.. image:: ./screenshots/pgadmin_08.png   
    2929 
    30 The query will run for a few (mili)seconds and return the 129 results. 
     30La requête s'exécutera pendant quelques (mili)secondes et retournera 129 résultats. 
    3131 
    3232.. image:: ./screenshots/pgadmin_09.png   
    3333 
    34 But what exactly happened here?  To understand, let's begin with the four "verbs" of SQL,  
     34Mais que c'est-il exactement passé ici ? Pour le comprendre, commençons par présenter les quatre type de requêtes du SQL : 
    3535 
    36  * ``SELECT``, returns rows in response to a query 
    37  * ``INSERT``, adds new rows to a table 
    38  * ``UPDATE``, alters existing rows in a table 
    39  * ``DELETE``, removes rows from a table 
     36 * ``SELECT``, retourne des lignes en réponse à une requête 
     37 * ``INSERT``, ajoute des lignes dans une table 
     38 * ``UPDATE``, modifit des lignes existantes d'une table 
     39 * ``DELETE``, supprimer des lignes d'une table 
    4040  
    41 We will be working almost exclusively with ``SELECT`` in order to ask questions of tables using spatial functions. 
     41Nous travaillerons principalement avec des requêtes de type ``SELECT``afin d'interroger les tables en utilisant des fonctions spatiales. 
    4242 
    43 SELECT queries 
    44 -------------- 
     43Requête de type SELECT 
     44---------------------- 
    4545 
    46 A select query is generally of the form: 
     46Une requête de type Select est généralement de la forme : 
    4747 
    48   SELECT some_columns FROM some_data_source WHERE some_condition; 
     48  SELECT colonnes FROM données WHERE conditions; 
    4949   
    5050.. note:: 
    5151 
    52     For a synopsis of all ``SELECT`` parameters, see the PostgresSQL `documentation  <http://www.postgresql.org/docs/8.1/interactive/sql-select.html>`_. 
     52    Pour une description exhaustive des paramÚtres possible d'une requête ``SELECT``, consultez la `documentaton de PostgresSQL  <http://www.postgresql.org/docs/8.1/interactive/sql-select.html>`_. 
    5353     
    54 The ``some_columns`` are either column names or functions of column values. The ``some_data_source`` is either a single table, or a composite table created by joining two tables on a key or condition. The ``some_condition`` is a filter that restricts the number of rows to be returned. 
    5554 
    56   "What are the names of all the neighborhoods in Brooklyn?" 
     55Les ``colonnes`` sont soit des noms de colonnes soit des fonctions utilisant les valeurs des colonnes. Les ``données`` sont soit une table seule, ou plusieures tables reliés ensemble en réalisant une jointure sur une clef ou une autre condition. Les ``conditions`` représentent le filtre qui restreint le nombre de lignes a retourner. 
    5756 
    58 We return to our ``nyc_neighborhoods`` table with a filter in hand.  The table contains all the neighborhoods in New York, but we only want the ones in Brooklyn. 
     57  "Quel sont les noms des quartier de Brooklyn ?" 
     58 
     59Nous retournons à notre table ``nyc_neighborhoods`` avec le filtre en main. La table contient tout les quartiers de New Yorl et nous ne voulons que ceux de Brooklyn. 
    5960 
    6061.. code-block:: sql 
     
    6465    WHERE boroname = 'Brooklyn'; 
    6566 
    66 The query will run for even fewer (mili)seconds and return the 23 results. 
     67La requête prendra encore que quelque (mili)secondes et retournera les 23 éléments résultants. 
    6768 
    68 Sometimes we will need to apply a function to the results of our query. For example, 
     69Parfois nous aurons besoin d'appliquer des fonctions sur le résultats d'une de nos requête. Par exemple, 
    6970 
    70   "What is the number of letters in the names of all the neighborhoods in Brooklyn?" 
     71  "Quel est le nombre de lettres dans les noms des quarties de Brooklyn ?" 
    7172   
    72 Fortunately, PostgreSQL has a string length function, :command:`char_length(string)`. 
     73Heureusement PostgreSQL fournit une fonction calculant la langueur d'une chaîne de caractÚres : :command:`char_length(string)`. 
    7374 
    7475.. code-block:: sql 
     
    7879    WHERE boroname = 'Brooklyn'; 
    7980 
    80 Often, we are less interested in the individual rows than in a statistic that applies to all of them. So knowing the lengths of the neighborhood names might be less interesting than knowing the average length of the names. Functions that take in multiple rows and return a single result are called "aggregate" functions.   
     81Bien souvent nous sommes moins interressé par une ligne particuliÚre mais plus par un calcul statistique sur l'ensemble résultant. Donc connaitre la longueur des noms de quartiers serait moins interressant que de calculer la moyenne des ces longueurs. Les fonctions qui renvoit un résultat unique en utilisant un ensemble de valeurs sont appelée des "fonctions d'aggrégations". 
    8182 
    82 PostgreSQL has a series of built-in aggregate functions, including the general purpose :command:`avg()` for average values and :command:`stddev()` for standard deviations. 
     83PostgreSQL fournit un ensemble de fonctions d'aggrégations, parmis lesquelles :command:`avg()` pour calculer la moyenne, and :command:`stddev()` pour l'écart type. 
    8384 
    84   "What is the average number of letters and standard deviation of number of letters in the names of all the neighborhoods in Brooklyn?" 
     85  "Quel est le nombre moyen et l'écart type du nombre de lettre dans le noms des quartier de Brooklyn ?" 
    8586   
    8687.. code-block:: sql 
     
    9697   11.7391304347826087 | 3.9105613559407395 
    9798 
    98 The aggregate functions in our last example were applied to every row in the result set. What if we want the summaries to be carried out over smaller groups within the overall result set? For that we add a ``GROUP BY`` clause. Aggregate functions often need an added ``GROUP BY`` statement to group the result-set by one or more columns.   
     99Les fonctions d'agrégation dans notre dernier exemple sont appliquées à chaque ligne de l'ensemble des résultats. Comment faire si nous voulons rassembler des données ? Pour cela nous utilisons la clause ``GROUP BY``. Les fonctions d'agrégation ont souvent besoin d'une clause ``GROUP BY`` pour regrouper les éléments en utilisant une ou plusieures colonnes. 
    99100 
    100   "What is the average number of letters in the names of all the neighborhoods in New York City, reported by borough?" 
     101  "Quel est la moyenne des les noms de quartier de New York, renvoyer par quartiers ?" 
    101102 
    102103.. code-block:: sql 
     
    106107    GROUP BY boroname; 
    107108  
    108 We include the ``boroname`` column in the output result so we can determine which statistic applies to which borough. In an aggregate query, you can only output columns that are either (a) members of the grouping clause or (b) aggregate functions. 
     109 
     110Nous ajoutons la colonne ``boroname`` dans le résultat afin de pouvoir déterminer quelle valeur statistique s'applique à quel quartier. Dans une requête agrégée, vous pouvez seulement retourner les colonnes qui sont (a) membre de la clause de regroupement ou (b) des fonctions d'agrégation. 
    109111   
    110112:: 
     
    118120   Staten Island | 12.2916666666666667 | 5.2043390480959474 
    119121   
    120 Function List 
    121 ------------- 
     122Liste de fonctions 
     123------------------ 
    122124 
    123 `avg(expression) <http://www.postgresql.org/docs/current/static/functions-aggregate.html#FUNCTIONS-AGGREGATE-TABLE>`_: PostgreSQL aggregate function that returns the average value of a numeric column. 
     125`avg(expression) <http://www.postgresql.org/docs/current/static/functions-aggregate.html#FUNCTIONS-AGGREGATE-TABLE>`_: fonction d'agrégation de PostgreSQL  qui retourne la valeur moyenne d'une colonne. 
    124126 
    125 `char_length(string) <http://www.postgresql.org/docs/current/static/functions-string.html>`_: PostgreSQL string function that returns the number of character in a string. 
     127`char_length(string) <http://www.postgresql.org/docs/current/static/functions-string.html>`_: fonction s'applicant aux chaînes de caractÚre de PostgreSQL qui retourne le nombre de lettre dans une chaîne. 
    126128 
    127 `stddev(expression) <http://www.postgresql.org/docs/current/static/functions-aggregate.html#FUNCTIONS-AGGREGATE-STATISTICS-TABLE>`_: PostgreSQL aggregate function that returns the standard deviation of input values. 
     129`stddev(expression) <http://www.postgresql.org/docs/current/static/functions-aggregate.html#FUNCTIONS-AGGREGATE-STATISTICS-TABLE>`_: fonction d'aggrégation de PostgreSQL qui retourne l'écart type d'un ensemble de valeurs. 
    128130   
    129131   
Note: See TracChangeset for help on using the changeset viewer.