DR4 Help
 Archive Intro
 Table Descriptions
 Schema Browser
 Glossary
 Algorithms
 Introduction to SQL
 Form Query User Guide
 Query Limits
 How To
 FAQ
 API
 sdssQA
 Download
     - sdssQA
     - sqlcl
     - Emacs interface
 SkyServer Sites
 SkyServer Traffic Page
 Web Browsers
 Site News
 Contact Help Desk
Download

SDSS Command Line Query Tool

Autor: Tamas Budavari, JHU
Datum: April 2003, überarbeitet Januar 2005 (DR3)

sqlcl.py ist ein (sehr) einfaches Python Programm, das SQL Suchanfragen an SkyServer starten kann. Python läuft auf deinen Lieblings OS, eingeschlossen den fremdartigsten. Die Suchanfrage geht durch dieselbe .asp Seite, die du in der Internetform oder mithilfe von wget verwendest.

März/04 Verbesserungen:

  • Suchanfrage unterstützt von Kommentaren
  • Informationen werden in der Kopfzeile angezeigt, wenn die -v Einstellung aktiviert ist
  • Am Ende jeder Zeile wurde Platz hinzugefügt, um einen früheren Fehler zu beheben.

Für grundlegende SQL Hilfe, gehe auf die Einleitung zu der SQL Seite

Download sqlcl                   sqlcl.py [2 kB]       
Python Quelldatei anschauen                   sqlcl.py.htm       

Kommandozeilen Beispiele/Tutorium:

skysrv: budavari$ sqlcl.py -h
>> sqlcl << command line query tool by Tamas Budavari 
Usage: sqlcl [options] sqlfile(s)

Options:
        -s url     : URL with the ASP interface (default: pha)
        -f fmt     : set output format (html,xml,csv - default: csv)
        -q query   : specify query on the command line
        -l         : skip first line of output with column names
        -h         : show this message
        -v	   : display header information
        
skysrv: budavari$ sqlcl.py -q "select top 2 ra,dec from star"
ra,dec
238.60018,3.467897E-1
238.601051,-5.516095E-1

skysrv: budavari$ for i in 17 18; do \
echo "select top 2 ra,dec from star where r between "$i" and "$((i+1)) \
 > star$i.sql; done
skysrv: budavari$ sqlcl.py star??.sql
ra,dec
238.596559,-7.822902E-2
238.584209,-7.833417E-2
ra,dec
238.595337,2.787041E-1
238.594255,-1.397587E-1

skysrv: budavari$ sqlcl.py -l star??.sql
238.596559,-7.822902E-2
238.584209,-7.833417E-2
238.595337,2.787041E-1
238.594255,-1.397587E-1

Python Beispiele/Tutorium:

skysrv: budavari$ python2
Python 2.2 (#1, Apr 12 2002, 15:29:57) 
[GCC 2.96 20000731 (Red Hat Linux 7.2 2.96-109)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlcl
>>> print sqlcl.query("select top 2 ra, dec from galaxy").read()
ra,dec
238.594193,-5.39169E-1
238.588016,2.669783E-1

>>> lines = sqlcl.query("select top 2 ra, dec from galaxy").readlines()
>>> data = []
>>> for line in lines[1:]: data.append(map(float,line[:-1].split(',')))
... 
>>> print data
[[238.59419299999999, -0.53916900000000001], [238.58801600000001, 0.2669783]]
>>> print data[0]
[238.59419299999999, -0.53916900000000001]
>>> print data[0][0]
238.594193
>>> print type(data[0][0])

>>> 

Dies sollte für den Anfang genügen, lass es uns wissen, wenn du weitere Hilfe benötigen solltest!

Download sqlcl                   sqlcl.py [2 kB]       
Python Quelldatei anschauen                   sqlcl.py.htm