aboutsummaryrefslogtreecommitdiff
path: root/doc/man/sql.l
diff options
context:
space:
mode:
authorMarc G. Fournier <scrappy@hub.org>1996-11-14 10:15:16 +0000
committerMarc G. Fournier <scrappy@hub.org>1996-11-14 10:15:16 +0000
commit389fe48cbb513888205bbe3a5008ed109976dacb (patch)
treee1bc978627338c127aa0d9c0fdbd8bed7fa6821c /doc/man/sql.l
parent65a10b1be6400025e7fd54befbc4a8489fd50e10 (diff)
downloadpostgresql-389fe48cbb513888205bbe3a5008ed109976dacb.tar.gz
postgresql-389fe48cbb513888205bbe3a5008ed109976dacb.zip
Removed man pages...moved to src/man
Requested by Bryan
Diffstat (limited to 'doc/man/sql.l')
-rw-r--r--doc/man/sql.l349
1 files changed, 0 insertions, 349 deletions
diff --git a/doc/man/sql.l b/doc/man/sql.l
deleted file mode 100644
index d6ad3eb6363..00000000000
--- a/doc/man/sql.l
+++ /dev/null
@@ -1,349 +0,0 @@
-.\" This is -*-nroff-*-
-.\" XXX standard disclaimer belongs here....
-.\" $Header: /cvsroot/pgsql/doc/man/Attic/sql.l,v 1.1.1.1 1996/08/18 22:14:28 scrappy Exp $
-.TH INTRODUCTION SQL 11/5/95 Postgres95 Postgres95
-.SH "Section 4 \(em SQL Commands (COMMANDS)"
-.SH "General Information"
-.SH DESCRIPTION
-The following is a description of the general syntax of SQL.
-Individual SQL statements and commands are treated separately in the
-document; this section describes the syntactic classes from which the
-constituent parts of SQL statements are drawn.
-.SH Comments
-A
-.IR comment
-is an arbitrary sequence of characters following double dashes up to the end
-of the line e.g:
-.nf
--- This is a comment
-.fi
-.SH "Names"
-.IR Names
-in SQL are sequences of not more than NAMEDATALEN alphanumeric characters,
-starting with an alphabetic character. By default, NAMEDATALEN is set
-to 16, but at the time the system is built, NAMEDATALEN can be changed
-by changing the #ifdef in src/backend/include/postgres.h. Underscore
-(\*(lq_\*(rq) is considered an alphabetic character.
-.SH "Keywords"
-The following identifiers are reserved for use as
-.IR keywords
-and may not be used otherwise:
-.PP
-.ft B
-.nf
-.if n .ta 5 +15 +15 +15
-.if t .ta 0.5i +1.5i +1.5i +1.5i
-.fi
-.ft
-.ft B
-.nf
-.if n .ta 5 +15 +15 +15
-.if t .ta 0.5i +1.5i +1.5i +1.5i
-.fi
-.ft
-.PP
-In addition, all Postgres classes have several predefined attributes used
-by the system.
-.SH "Constants"
-There are six types of
-.IR constants
-for use in SQL. They are described below.
-.SH "String Constants"
-.IR Strings
-in SQL are arbitrary sequences of ASCII characters bounded by single
-quotes (' '). Uppercase alphabetics within strings are accepted
-literally. Non-printing characters may be embedded within strings by
-prepending them with a backslash, e.g., `\en'. Also, in order to embed
-quotes within strings, it is necessary to prefix them with `\e' . The
-same convention applies to `\e' itself. Because of the limitations on
-instance sizes, string constants are currently limited to a length of
-a little less than 8192 bytes. Larger objects may be created using the
-Postgres Large Object interface.
-.SH "Integer Constants"
-.IR "Integer constants"
-in SQL are collection of ASCII digits with no decimal point. Legal
-values range from \(mi2147483647 to +2147483647. This will vary
-depending on the operating system and host machine.
-.SH "Floating Point Constants"
-.IR "Floating point constants"
-consist of an integer part, a decimal point, and a fraction part or
-scientific notation of the following format:
-.nf
-{<dig>} .{<dig>} [e [+-] {<dig>}]
-.fi
-Where <dig> is a digit. You must include at least one <dig> after the
-period and after the [+-] if you use those options. An exponent with
-a missing mantissa has a mantissa of 1 inserted. There may be no
-extra characters embedded in the string.
-Floating point constaints are of type float4.
-.SH "Constants of Postgres User-Defined Types"
-A constant of an
-.IR arbitrary
-type can be entered using the notation:
-.nf
-'string'::type-name
-.fi
-or
-.nf
-CAST 'string' AS type-name
-.fi
-The value inside the string is passed to the input
-conversion routine for the type called type-name. The result is a
-constant of the indicated type. The explicit typecast may be omitted
-if there is no ambiguity as to the type the constant must be, in which
-case it is automatically coerced.
-.SH "Array constants"
-.IR "Array constants"
-are arrays of any Postgres type, including other arrays, string
-constants, etc. The general format of an array constant is the
-following:
-.nf
-{<val1><delim><val2><delim>}
-.fi
-Where
-.IR "<delim>"
-is the delimiter for the type stored in the \*(lqpg_type\*(rq class.
-(For built-in types, this is the comma character, \*(lq,\*(rq.) An
-example of an array constant is
-.nf
-{{1,2,3},{4,5,6},{7,8,9}}
-.fi
-This constant is a two-dimensional, 3 by 3 array consisting of three
-sub-arrays of integers.
-.PP
-Individual array elements can and should be placed between quotation
-marks whenever possible to avoid ambiguity problems with respect to
-leading white space.
-.\" Elements of single-element arrays (e.g.,
-.\" \*(lq{"1"}\*(rq) must be quoted.
-.PP
-.SH "FIELDS AND COLUMNS"
-.SH "Fields"
-A
-.IR field
-is either an attribute of a given class or one of the following:
-.nf
-oid
-tmin
-tmax
-xmin
-xmax
-cmin
-cmax
-.fi
-.PP
-.IR Oid
-stands for the unique identifier of an instance which is added by
-Postgres to all instances automatically. Oids are not reused and are 32
-bit quantities.
-.PP
-.IR "Tmin, tmax, xmin, cmin, xmax"
-and
-.IR cmax
-stand respectively for the time that the instance was inserted, the
-time the instance was deleted, the identity of the inserting
-transaction, the command identifier within the transaction, the
-identity of the deleting transaction and its associated deleting
-command. For further information on these fields consult [STON87].
-Times are represented internally as instances of the \*(lqabstime\*(rq
-data type. Transaction identifiers are 32 bit quantities which are
-assigned sequentially starting at 512. Command identifiers are 16 bit
-objects; hence, it is an error to have more than 65535 SQL commands
-within one transaction.
-.SH "Columns"
-A
-.IR column
-is a construct of the form:
-.nf
-Instance-variable{.composite_field}.field `['number`]'
-.fi
-.IR Instance-variable
-identifies a particular class and can be thought of as standing for
-the instances of that class. An instance variable is either a class
-name, a surrogate for a class defined by means of a
-.IR from
-clause, or the keyword
-.BR new
-or
-.BR current.
-New and current can only appear in the action portion of a rule, while
-other instance variables can be used in any SQL statement.
-.IR Composite_field
-is a field of of one of the Postgres composite types indicated in the
-.IR information (l)
-section, while successive composite fields address attributes in the
-class(s) to which the composite field evaluates. Lastly,
-.IR field
-is a normal (base type) field in the class(s) last addressed. If
-.IR field
-is of type array, then the optional
-.IR number
-designator indicates a specific element in the array. If no number is
-indicated, then all array elements are returned.
-.SH "Operators"
-Any built-in system, or user-defined operator may be used in SQL.
-For the list of built-in and system operators consult
-.BR "introduction" "(3)."
-For a list of user-defined operators consult your system administrator
-or run a query on the pg_operator class. Parentheses may be used for
-arbitrary grouping of operators.
-.SH "Expressions (a_expr)"
-An
-.IR expression
-is one of the following:
-.nf
-( a_expr )
-constant
-attribute
-a_expr binary_operator a_expr
-a_expr right_unary_operator
-left_unary_operator a_expr
-parameter
-functional expressions
-aggregate expressions
-.fi
-We have already discussed constants and attributes. The two kinds of
-operator expressions indicate respectively binary and left_unary
-expressions. The following sections discuss the remaining options.
-.SH "Parameters"
-A
-.IR parameter
-is used to indicate a parameter in a SQL function. Typically this
-is used in SQL function definition statement. The form of a
-parameter is:
-.nf
-\'$' number
-.fi
-For example, consider the definition of a function, DEPT, as
-.nf
-create function DEPT (char16)
- returns dept
- as 'select * from
- dept where name=$1'
- language 'sql'
-.fi
-.SH "Functional Expressions"
-A
-.IR "functional expression"
-is the name of a legal SQL function, followed by its argument list
-enclosed in parentheses, e.g.:
-.nf
-fn-name (a_expr{ , a_expr})
-.fi
-For example, the following computes the square root of an employee
-salary.
-.nf
-sqrt(emp.salary)
-.fi
-.SH "Aggregate Expression"
-An
-.IR "aggregate expression"
-represents a simple aggregate (i.e., one that computes a single value)
-or an aggregate function (i.e., one that computes a set of values).
-The syntax is the following:
-.nf
-aggregate.name (attribute)
-.fi
-Here,
-.IR aggregate_name
-must be a previously defined aggregate.
-.SH "Target_list"
-A
-.IR "target list"
-is a parenthesized, comma-separated list of one or more elements, each
-of which must be of the form:
-.nf
-a_expr[AS result_attname]
-.fi
-Here, result_attname is the name of the attribute to be created (or an
-already existing attribute name in the case of update statements.) If
-.IR result_attname
-is not present, then
-.IR a_expr
-must contain only one attribute name which is assumed to be the name
-of the result field. In Postgres default naming is only used if
-.IR a_expr
-is an attribute.
-.SH‚‚ "Qualification"
-A
-.IR qualification
-consists of any number of clauses connected by the logical operators:
-.nf
-not
-and
-or
-.fi
-A clause is an
-.IR a_expr
-that evaluates to a Boolean over a set of instances.
-.SH "From List"
-The
-.IR "from list"
-is a comma-separated list of
-.IR "from expressions" .
-.PP
-Each
-.IR "from expression"
-is of the form:
-.nf
-[class_reference] instance_variable
- {, [class_ref] instance_variable...}
-.fi
-where
-.IR class_reference
-is of the form
-.nf
-class_name [time_expression] [*]
-.fi
-The
-.IR "from expression"
-defines one or more instance variables to range over the class
-indicated in
-.IR class_reference .
-Adding a
-.IR time_expression
-will indicate that a historical class is desired. One can also request
-the instance variable to range over all classes that are beneath the
-indicated class in the inheritance hierarchy by postpending the
-designator \*(lq*\*(rq.
-.SH‚‚ "Time Expressions"
-A
-.IR "time expression"
-is in one of two forms:
-.nf
- ['date']
- ['date-1', 'date-2']
-.fi
-The first case requires instances that are valid at the indicated
-time. The second case requires instances that are valid at some time
-within the date range specified. If no time expression is indicated,
-the default is \*(lqnow\*(rq.
-.PP
-In each case, the date is a character string of the form
-.nf
-[MON-FRI] 'MMM DD [HH:MM:SS] YYYY' [Timezone]
-.fi
-where MMM is the month (Jan \- Dec), DD is a legal day number in the
-specified month, HH:MM:SS is an optional time in that day (24-hour
-clock), and YYYY is the year. If the time of day HH:MM:SS is not
-specified, it defaults to midnight at the start of the specified day.
-As of Version 3.0, times are no longer read and written using
-Greenwich Mean Time; the input and output routines default to the
-local time zone.
-.PP
-For example,
-.nf
-['Jan 1 1990']
-['Mar 3 00:00:00 1980', 'Mar 3 23:59:59 1981r']
-.fi
-are valid time specifications.
-.PP
-Note that this syntax is slightly different than that used by the
-time-range type.
-.SH "SEE ALSO"
-insert(l),
-delete(l),
-execute(l),
-update(l),
-select(l),
-monitor(1).