Note: A new GRASS GIS stable version has been released: GRASS GIS 7. Go directly to the new manual page here
NAME
db.select - Selects data from attribute table (performs SQL query statement(s)).
KEYWORDS
database, attribute table, SQL
SYNOPSIS
db.select
db.select help
db.select [-cdvt] [table=name] [database=name] [driver=name] [sql=string] [input=name] [fs=character] [vs=character] [nv=string] [output=name] [--verbose] [--quiet]
Flags:
- -c
- Do not include column names in output
- -d
- Describe query only (don't run it)
- -v
- Vertical output (instead of horizontal)
- -t
- Only test query, do not execute
- --verbose
- Verbose module output
- --quiet
- Quiet module output
Parameters:
- table=name
- Table name
- database=name
- Database name
- Default: $GISDBASE/$LOCATION_NAME/$MAPSET/dbf/
- driver=name
- Driver name
- Options: dbf,odbc,pg,mysql,sqlite,ogr
- Default: dbf
- sql=string
- SQL select statement
- For example: 'select * from rybniky where kapri = 'hodne'
- input=name
- Name of file with sql statement
- fs=character
- Field separator
- Output field separator
- Default: |
- vs=character
- Field separator
- Output vertical record separator
- nv=string
- Null value indicator
- output=name
- Name for output file (if omitted or "-" output to stdout)
DESCRIPTION
db.select prints result of selection from database
based on SQL statement read from input file or from standard input
to standard output.
NOTE
If parameters for database connection are already set with
db.connect, they are taken as default values and
do not need to be spcified each time. Output will be displayed to stdout or can
be directed to a file.
EXAMPLES
echo "select * from roads" | db.select
or
cat file.sql | db.select
or
db.select input=file.sql
Select all from table roads
db.select -c driver=odbc database=mydb table=roads \
input=file.sql output=result.csv
Select some string attribute, exclude others:
echo "SELECT * FROM archsites WHERE str1 <> 'No Name'" | db.select
Select some string attribute with ZERO length:
echo "SELECT * FROM archsites WHERE str1 IS NULL" | db.select
Select coordinates from PostGIS table:
echo "SELECT x(geo),y(geo) FROM localizzazione" | db.select
Count number of cases falling into same position:
When multiple observation have the spatial coordinates, they can still be counted
(if needed, coordinates can be uploaded to the attribute table by v.to.db:
db.select sql="SELECT long,lat,site_id,department,obs,COUNT(long) as count_cases \
FROM diseases GROUP BY long,lat"
SEE ALSO
GRASS SQL interface,
db.connect,
db.describe,
db.drivers,
db.droptable,
db.execute,
db.login,
db.tables
AUTHOR
Unknown
Modifications: Radim Blazek, ITC-Irst, Trento, Italy
Last changed: $Date: 2013-04-09 09:52:11 -0700 (Tue, 09 Apr 2013) $
Main index - database index - Full index
© 2003-2016 GRASS Development Team