Accéder aux données de Gaia DR1

Documents pareils
Le langage SQL Rappels

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Langage SQL : créer et interroger une base

1 Introduction et installation

Le Langage SQL version Oracle

SQL Historique

TD : Requêtes SQL (BDR.TD2-1) INSA 3IF

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Les bases de données

TD n 10 : Ma première Base de Données

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

MODE OPERATOIRE OPENOFFICE BASE

TP base de données SQLite. 1 Différents choix possibles et choix de SQLite : 2 Définir une base de donnée avec SQLite Manager

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

14/04/2014. un ensemble d'informations sur un sujet : exhaustif, non redondant, structuré, persistant. Gaëlle PERRIN SID2 Grenoble.

16H Cours / 18H TD / 20H TP

Cours SQL. Base du langage SQL et des bases de données

Optimisation SQL. Quelques règles de bases

Bases de données relationnelles

Systèmes de Gestion de Bases de Données

Cours 4 : Agrégats et GROUP BY

FORMATION A L UTILISATION DE PMB QUELQUES NOTIONS DE SQL

Initiation à SQL. Le langage de communication avec une base de données relationnelles. Application avec PostgreSQL. Nathalie Camelin 2011/2012

Durée : 4 heures Le sujet se présente sous la forme de deux dossiers indépendants

Vincent Augusto

Plan. Bases de Données. Sources des transparents. Bases de SQL. L3 Info. Chapitre 4 : SQL LDD Le langage de manipulation de données : LMD

Introduction au Système de Gestion de Base de Données et aux Base de Données

Table des matières PRESENTATION DU LANGAGE DS2 ET DE SES APPLICATIONS. Introduction

1. Qu'est-ce que SQL? La maintenance des bases de données Les manipulations des bases de données... 5

TP Bases de données réparties

Mysql avec EasyPhp. 1 er mars 2006

Durée : 4 heures coefficient : 4 Le sujet se présente sous la forme de deux dossiers indépendants

Bases de données cours 4 Construction de requêtes en SQL. Catalin Dima

Introduction aux Bases de Données 2004/2005

SOMMAIRE. Travailler avec les requêtes... 3

Oracle Décisionnel : Modèle OLAP et Vue matérialisée D BILEK

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

INTRODUCTION : Données structurées et accès simplifié

Whitepaper. Méthodologie de création de rapports personnalisés SQL Server Reporting Services

Les bases fondamentales du langage Transact SQL

INTRODUCTION AU DATA MINING

Base de données relationnelle et requêtes SQL

FileMaker 13. Guide de référence SQL

Business Intelligence avec Excel, Power BI et Office 365

Les Entrepôts de Données

MySQL / SQL EXEMPLES

Réplication E-maj Foreign Data Wrapper PostGIS PostgreSQL-f

Exploiter les statistiques d utilisation de SQL Server 2008 R2 Reporting Services

La présente publication est protégée par les droits d auteur. Tous droits réservés.

Bases de données multidimensionnelles et mise en œuvre dans Oracle

CREATION WEB DYNAMIQUE

PHP 5. La base de données MySql. A. Belaïd 1

21 mars Simulations et Méthodes de Monte Carlo. DADI Charles-Abner. Objectifs et intérêt de ce T.E.R. Générer l'aléatoire.

Auto-évaluation SQL. Document: f0453test.fm 19/04/2012. ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium

données en connaissance et en actions?

Bases de données. Yamine AIT AMEUR. INPT-ENSEEIHT DIMA 2 Rue Charles Camichel Toulouse Cedex 7

Bases de données Cours 4 : Le langage SQL pour ORACLE

BTS/CGO P10 SYSTEME INFORMATION Année

SQL Serveur Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

Bases de données Page 1 de 11. Bases de données. Prof. : Dzenan Ridjanovic

OLAP : Mondrian + Pentaho. Maguelonne Teisseire Hugo Alatrista Salas hugo.alatrista- salas@teledetec9on.fr Flavien Bouillot

Partie I : Créer la base de données. Année universitaire 2008/2009 Master 1 SIIO Projet Introduction au Décisionnel, Oracle

Cours 3. Développement d une application BD. DBA - Maîtrise ASR - Université Evry

ArcGIS 10.1 for Server

Compétences Business Objects

Résumé S Q L. Auteur: Alexandre PATIN Edition: 22 février alexandre.patin@free.fr URL :

Structured Query Language

Information utiles. webpage : Google+ : digiusto/

Bases de Données. Plan

5 - SQL - Bases de données

SQL sous SqlServer OLIVIER D. DEHECQ Olivier 0

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

INSTITUT NATIONAL DES TELECOMMUNICATIONS CONTROLE DES CONNAISSANCES. 2. Les questions sont indépendantes les unes des autres.

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

2 Serveurs OLAP et introduction au Data Mining

Le Langage De Description De Données(LDD)

Module BDWEB. Maîtrise d informatique Cours 9 - Xquery. Anne Doucet. anne.doucet@lip6.fr

Sybase Adaptive Server Enterprise 15

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Bases de données Outils de gestion

ÉTUDE DE CAS. Durée : 5 heures Coefficient : 5 CAS FEFORT ÉLÉMENTS DE CORRECTION

Mysql. Les requêtes préparées Prepared statements

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

SUGARCRM MODULE RAPPORTS

Bases de Données. Le cas des BD relationnelles ouverture sur les BD relationnelles spatiales Séance 2 : Mise en oeuvre

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

FileMaker 10. Guide ODBC et JDBC

Excel avancé. Frédéric Gava (MCF)

Présentation du module Base de données spatio-temporelles

Introduction à la B.I. Avec SQL Server 2008

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

SQL MAP. Etude d un logiciel SQL Injection

Traitement bas-niveau

1 Introduction. 2 Le modèle relationnel. 3 Algèbre relationnelle 4 SQL. 5 Organisation physique des données 1/228

Chapitre 11 Bases de données

Bases de données. PTSI Lycée Eiffel. 28 février 2014

Transcription:

Accéder aux données de Gaia DR1 I-Chun Shih et Nicolas Leclerc Vendredi 16 septembre 2016

Qu est ce que ADQL? Qu est ce que ADQL? Astronomical Data Query Language IVOA (International Virtual Observatory Alliance), version 2 d avril 2008 Repose sur la norme SQL 92 (Structured Query Language) : un langage d interrogation de base de données Ajoute des fonctionnalités spatiales à SQL : area, centroid, circle, contains, distance, intersects, latitude, longitude, point, polygon, rectangle, region

Le SQL : SELECT... FROM pour extraire des données Le SQL : SELECT... FROM pour extraire des données Pour extraire des données d une table, il faut 2 informations : Ce que vous voulez extraire (SELECT) D où vous voulez l extraire (FROM) Select source_id, ra, dec from gaiadr1.gaia_source ; Select * from gaiadr1.gaia_source ; l opérateur *, qui retourne toutes les colonnes de la table, fait perdre du temps. Ne l utiliser qu en cas de nécessité

Le SQL : ORDER BY pour trier les données extraites Le SQL : ORDER BY pour trier les données extraites ORDER BY permet de trier les données et doit se situer en fin de requête Possible d utiliser plusieurs colonnes Par défaut ascendant (asc), mais descendant possible (desc) Select source_id, ra, dec from gaiadr1.gaia_source order by source_id ; Select source_id, ra, dec from gaiadr1.gaia_source order by source_id, ra, dec ; Select ra, dec, souce_id from gaiadr1.gaia_source order by 3, 1 ;

Le SQL : WHERE pour filtrer les données Le SQL : WHERE pour filtrer les données Voici les opérateurs décris dans la documentation ADQL : Les opérateurs logique standard : AND, OR, NOT Les opérateurs de comparaison : =,!=, <>, <, >, <=, >= BETWEEN LIKE NULL EXISTS

Le SQL : WHERE (suite) Le SQL : WHERE (suite) NOT inverse le résultat de la condition qui suit AND est prioritaire par rapport à OR source_id = "1" OR source_id = "2" AND dec_error < 0.1 est différent de : (source_id = "1" OR source_id = "2") AND dec_error < 0.1 L opérateur IN est plus rapide qu une série de OR L opérateur LIKE est puissant, mais peut être très lent : "_" remplace un caractère "%" remplace plusieurs caractères "[ ]" permets de spécifier des ensembles (ex : [JM%] retourne tout les champs commençant par JM)

Le SQL : Créer des champs calculés Le SQL : Créer des champs calculés Opérateur de concaténation (ex : SELECT ( ra, dec ) ) Calculs arithmétiques + - x / Fonctions mathématiques : cos, sin, abs... Fonctions statistiques : avg, count, max, min, sum Pour count, si la colonne est précisée, les NULL ne sont pas comptés Les alias avec AS, permettent de donner un nom à un champ calculé (ex gaiadr1.gaia_source AS g) http ://www.w3schools.com/sql/sql_functions.asp

Le SQL : GROUP BY pour grouper les données Le SQL : GROUP BY pour grouper les données GROUP BY peut contenir un nombre illimité de colonnes Pas d opérateur d agrégation (COUNT, AVG, MIN...) dans le GROUP BY Excepté l agrégation, toutes les colonnes dans le SELECT doivent être dans le GROUP BY Si NULL est présent, il formera un groupe Pour filtrer les GROUP BY, il faut utiliser HAVING

Le SQL : GROUP BY exemple Le SQL : GROUP BY exemple Que contient un source_id codé sur 64 bits? Healpix (Hierarchical Equal Area isolatitude Pixelisation) d ordre 12 (201 326 592 Npix) Code DPC Numéro de création dans le Healpix Numéro de la source Pour chaque cellule d un Healpix de niveau 7, compter le nombre d étoile et la valeur moyenne de ra, dec : SELECT source_id/35184372088832 as hpx7, count(*) as gaia_nbsrc, avg(ra) as ra, avg(dec) as dec FROM gaiadr1.tgas_source GROUP BY hpx7 HAVING count(*) > 1 ORDER BY hpx7 asc

Le SQL : GROUP BY exemple (2) Le SQL : GROUP BY exemple (2) A quoi ressemble un Healpix :

Le SQL : GROUP BY exemple (3) Le SQL : GROUP BY exemple (3) Comprendre source_id/35184372088832 : Le Healpix d ordre 12 est codé dans le source_id à partir du 35 e bit, ainsi source_id 35 ou source_id retourne la valeur du 2 35 Healpix d ordre 12. Ordre Nside Npix 1 2 48 2 4 192 3 8 768 4 16 3072 5 32 12288 6 64 49152 7 128 196608 8 256 786432 9 512 3145728 10 1024 12582912 11 2048 50331648 12 4096 201326592 Avec Nside = 2 Ordre et Npix = 12 Nside 2 Pour passer de l ordre 12 à l ordre 7, il faut 201326592 196608 = 1024 = 2 10 Donc pour l ordre 7 : source_id 2 45 avec 2 45 = 35184372088832

Le SQL : Travailler avec des sous-requêtes Le SQL : Travailler avec des sous-requêtes La requête traitée en premier est celle qui est la plus à l intérieur SELECT hip, b_v, e_b_v FROM gaiadr1.hipparcos WHERE hip IN (SELECT hip FROM gaiadr1.tgas_source WHERE parallax/parallax_error > 5) ; SELECT h.hip, h.b_v, h.e_b_v FROM gaiadr1.hipparcos AS h, gaiadr1.tgas_source AS g WHERE h.hip = g.hip AND g.parallax/g.parallax_error > 5 SELECT h.hip, h.b_v, h.e_b_v FROM gaiadr1.hipparcos AS h INNER JOIN gaiadr1.tgas_source AS g ON h.hip = g.hip WHERE g.parallax/g.parallax_error > 5

Le SQL : Les jointures Le SQL : Les jointures