File: query-ug.html

package info (click to toggle)
mpsql 2.1-2
  • links: PTS
  • area: non-free
  • in suites: potato
  • size: 3,528 kB
  • ctags: 4,886
  • sloc: ansic: 35,184; makefile: 3,761; sh: 44
file content (316 lines) | stat: -rw-r--r-- 4,794 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>The Query Language</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet version 1.19"><LINK
REL="HOME"
TITLE="PostgreSQL User's Guide"
HREF="user.html"><LINK
REL="PREVIOUS"
TITLE="Inheritance"
HREF="inherit.html"><LINK
REL="NEXT"
TITLE="Creating a New Class"
HREF="query-ug2863.html"></HEAD
><BODY
BGCOLOR="#FFFFFF"
TEXT="#000000"
><DIV
CLASS="NAVHEADER"
><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>PostgreSQL User's Guide</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="inherit.html"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="query-ug2863.html"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="QUERY-UG"
>Chapter 12. The Query Language</A
></H1
><DIV
CLASS="TOC"
><DL
><DT
><B
>Table of Contents</B
></DT
><DT
><A
HREF="query-ug.html#AEN2847"
>Concepts</A
></DT
><DT
><A
HREF="query-ug2863.html"
>Creating a New Class</A
></DT
><DT
><A
HREF="query-ug2887.html"
>Populating a Class with Instances</A
></DT
><DT
><A
HREF="query-ug2896.html"
>Querying a Class</A
></DT
><DT
><A
HREF="query-ug2913.html"
>Redirecting SELECT Queries</A
></DT
><DT
><A
HREF="query-ug2920.html"
>Joins Between Classes</A
></DT
><DT
><A
HREF="query-ug2935.html"
>Updates</A
></DT
><DT
><A
HREF="query-ug2939.html"
>Deletions</A
></DT
><DT
><A
HREF="query-ug2946.html"
>Using Aggregate Functions</A
></DT
></DL
></DIV
><P
><BLOCKQUOTE
CLASS="NOTE"
><P
><B
>Note: </B
>This chapter must go into depth on each area of the query language. 
Currently a copy of the tutorial.
- thomas 1998-01-12</P
></BLOCKQUOTE
></P
><P
>     The  <SPAN
CLASS="PRODUCTNAME"
>Postgres</SPAN
>  query language is a variant of
 <SPAN
CLASS="ACRONYM"
>SQL3</SPAN
>. It
     has many extensions such as an extensible type  system,
     inheritance,  functions and production rules. Those are
     features carried over from the original <SPAN
CLASS="PRODUCTNAME"
>Postgres</SPAN
>  
query
     language,  <SPAN
CLASS="PRODUCTNAME"
>PostQuel</SPAN
>.  
This section provides an overview
     of how to use <SPAN
CLASS="PRODUCTNAME"
>Postgres</SPAN
> <SPAN
CLASS="ACRONYM"
>SQL</SPAN
>
  to  perform  simple  operations.
     This manual is only intended to give you an idea of our
     flavor of <SPAN
CLASS="ACRONYM"
>SQL</SPAN
> and is in no way a complete  tutorial  on
     <SPAN
CLASS="ACRONYM"
>SQL</SPAN
>.  Numerous  books  have  been  written  on <SPAN
CLASS="ACRONYM"
>SQL</SPAN
>. For
     instance, consult <A
HREF="biblio.html#MELT93"
><I
>Understanding the New <I
>SQL</I
></I
></A
> or 
     <A
HREF="biblio.html#DATE97"
><I
>A Guide to the <I
>SQL</I
> Standard</I
></A
>. You should also
     be  aware  that  some features of <SPAN
CLASS="PRODUCTNAME"
>Postgres</SPAN
>
are not part of the <SPAN
CLASS="ACRONYM"
>ANSI</SPAN
> standard.</P
><H1
CLASS="SECT1"
><A
NAME="AEN2847"
>Concepts</A
></H1
><P
>     The fundamental notion in <SPAN
CLASS="PRODUCTNAME"
>Postgres</SPAN
> 
is that of a  class,
     which  is a named collection of object instances.  Each
     instance has the same collection of  named  attributes,
     and each attribute is of a specific type.  Furthermore,
     each instance has a permanent <I
CLASS="FIRSTTERM"
>object  
identifier</I
> (<SPAN
CLASS="ACRONYM"
>OID</SPAN
>)
     that  is  unique  throughout the installation.  Because
     <SPAN
CLASS="ACRONYM"
>SQL</SPAN
> syntax refers to tables,  we  will use  the  terms
     <I
CLASS="FIRSTTERM"
>table</I
> and <I
CLASS="FIRSTTERM"
>class</I
> interchangeably.
  Likewise, an <SPAN
CLASS="ACRONYM"
>SQL</SPAN
> <I
CLASS="FIRSTTERM"
>row</I
> is an
     <I
CLASS="FIRSTTERM"
>instance</I
> and <SPAN
CLASS="ACRONYM"
>SQL</SPAN
> 
<I
CLASS="FIRSTTERM"
>columns</I
>
 are <I
CLASS="FIRSTTERM"
>attributes</I
>.
     As  previously  discussed,  classes  are  grouped  into
     databases,  and  a collection of databases managed by a
     single <TT
CLASS="FILENAME"
>postmaster</TT
> process constitutes  an  installation
     or site.</P
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="inherit.html"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="user.html"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="query-ug2863.html"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Inheritance</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
>;</TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>Creating a New Class</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>