Appendix A

T-SQL Command Syntax Reference

SQL Server 2012 recognizes up to four parts of object names. This convention is the same in SQL Server 2005, 2008, and 2008 R2. Depending on the context of an expression, some parts may or may not be necessary when referencing an object. When a script runs on a different server or when you are using a different database, related object names may be required. Note that versions of SQL Server since 2005 recognize the schema name in the third position, whereas SQL Server 2000 and earlier versions recognized the object owner name in the third position. Table A.1 summarizes the valid syntax for referencing database objects.

Table A.1

Object Reference Use and Context
object Used in the context of the local database, on the same server. object is part of the dbo schema. There are no duplicate object names.
schema.object Used in the context of the local database, on the same server. Duplicate object names that have schema names (and, subsequently, different owners) are permitted. Also uses a standard convention for clarity.
database..object Used in the context of the same or different database on the same server. If you haven't specified the owner or schema, assumes the dbo schema.
database.schema.object A three-part name fully describes an object on the same server, in the same or a different database.
server.database.schema.object A four-part name is valid in the context of a remote server or the local server, in the local or a different database, and for any schema.
server.database..object The database owner or schema in the third position can be omitted to use the default dbo schema.
server..schema.object The database name can be omitted to use the default database on that server. This is not a typical practice.
server ... object Omitting the database and owner or schema name causes the default database and the default dbo schema to be used. This is valid syntax but not a typical practice.

T-SQL Commands, Clauses, and Predicates

The following sections describe the core components of the T-SQL language. The version that introduces newer syntax features is noted.

WITH

Introduced in SQL Server 2005, this technique may be used to define an alias for the result set returned by a SELECT expression.

WITH MyCTE
AS
( SELECT * FROM Production.Product WHERE ListPrice < 1000 )
SELECT * FROM MyCTE

Optionally, column aliases can be defined in parentheses following the Common Table Expression (CTE) name:

WITH MyCTE ( ID, ProdNumber, ProdName, Price )
AS
( SELECT
    ProductID
  , ProductNumber
  , Name
  , ListPrice
  FROM Production.Product WHERE ListPrice < 1000
)
SELECT * FROM MyCTE

SELECT

  • To return all columns from a table or view:
SELECT * FROM table_name
  • To return specific columns from a table or view:
SELECT Column1, Column2, Column3 FROM table_name
  • Column alias techniques:
SELECT Column1 AS Col1, Column2 AS Col2 FROM table_name
SELECT Column1 Col1, Column2 Col2 FROM table_name
SELECT Col1 = Column1, Col2 = Column2 FROM table_name
  • To return literal values:
SELECT ‘Some literal value’
SELECT ‘Some value’ AS Col1, 123 AS Col2
  • To return an expression value:
SELECT (1 + 2) * 3
  • To return the result of a function call:
SELECT CONVERT( varchar(20), GETDATE(), 101 )

SELECT TOP

  • To return a fixed number of rows:
SELECT TOP 10 * FROM table_name ORDER BY Column1
SELECT TOP 10 Column1, Column2 FROM table_name ORDER BY Column2
  • To return a fixed number of rows with the ties for last position:
SELECT TOP 10 WITH TIES Column1, Column2 FROM table_name ORDER BY Column2
  • To return a percentage of all available rows:
SELECT TOP 25 PERCENT * FROM table_name ORDER BY Column2
SELECT TOP 25 PERCENT Column1, Column2 FROM table_name ORDER BY Column2
  • To substitute a variable or expression for a top values number:
DECLARE @TopNumber Int
SET @TopNumber = 15
SELECT TOP (@TopNumber) * FROM table_name ORDER BY Column2
  • To return top values based on an expression:
SELECT TOP (SELECT a_column_value FROM some_table) * FROM another_table

SELECT INTO

  • To create and populate a table from a result set:
SELECT Column1, Column2 INTO
new_table_name FROM existing_table_or_view_name

FROM

  • Single table query:
SELECT * FROM table_name
  • Multitable join query:
SELECT *
FROM table1.key_column INNER JOIN table2 ON table1.key_column = table2.key_column
  • Derived table:
SELECT DerTbl.Column1, DerTbl.Column2
FROM
    ( SELECT Column1, Column2 FROM some_table ... ) AS DerTbl

WHERE

  • Exact match:
SELECT ... FROM ...
WHERE Column1 = ‘A literal value’
  • Not NULL:
SELECT ... FROM ...
WHERE Column1 IS NOT NULL
  • Any trailing characters:
SELECT ... FROM ...
WHERE Column1 LIKE ‘ABC%’
  • Any leading characters:
SELECT ... FROM ...
WHERE Column1 LIKE ‘%XYZ’
  • Any leading or trailing characters:
SELECT ... FROM ...
WHERE Column1 LIKE ‘%MNOP%’
  • Placeholder wildcard:
SELECT ... FROM ...
WHERE Column1 LIKE ‘_BC_EF’
  • Criteria using parentheses to designate order:
SELECT ... FROM ...
WHERE
    (Column1 LIKE ‘ABC%’ AND Column2 LIKE ‘%XYZ’)
    OR
    Column3 = ‘123’

GROUP BY

All nonaggregated columns in the SELECT list must be included in the GROUP BY list:

SELECT COUNT(Column1), Column2, Column3
FROM ... WHERE ...
GROUP BY Column2, Column3
  • Designating order:
SELECT COUNT(Column1), Column2, Column3
FROM ... WHERE ...
GROUP BY Column2, Column3
ORDER BY Column2 DESC, Column3 ASC

WITH ROLLUP

  • Legacy method to implement a rollup subtotal break:

warning

Note that the ROLLUP and CUBE operators cause SQL Server to return a non-two-dimensional result set that is not supported by many APIs and client interfaces.

SELECT Column1, Column2, SUM(Column3)
FROM table_name
GROUP BY Column1, Column2
WITH ROLLUP

This syntax is still supported in SQL Server 2012, but the newer BY ROLLUP syntax, introduced in SQL Server 2008, is preferred.

BY ROLLUP

This syntax was introduced in SQL Server 2008 for implementing a rollup subtotal break:

SELECT Column1, Column2, SUM(Column3)
FROM table_name
GROUP BY ROLLUP(Column1, Column2)

WITH CUBE

  • Legacy method to implement a cube subtotal break:
SELECT Column1, Column2, SUM(Column3)
FROM table_name
GROUP BY Column1, Column2
WITH CUBE

This syntax is still supported in SQL Server 2012, but the newer BY CUBE syntax, introduced in SQL Server 2008, is preferred.

BY CUBE

This syntax was introduced in SQL Server 2008 for implementing a cube subtotal break:

SELECT Column1, Column2, SUM(Column3)
FROM table_name
GROUP BY CUBE(Column1, Column2)

HAVING

  • To filter results based on values available after the aggregations and groupings are performed:
SELECT COUNT(Column1), Column2, Column3
FROM ... WHERE ...
GROUP BY Column2, Column3
HAVING COUNT(Column1) > 5

UNION

  • To combine multiple results with the same column count:
SELECT Column1, Column2 FROM table1_name
UNION
SELECT Column1, Column2 FROM table2_name
  • To combine literal values and query results:
SELECT -1 AS Column1, ‘A literal value’ AS Column2
UNION
SELECT Column1, Column2 FROM table1_name
  • To include nondistinct selection (UNION performs SELECT DISTINCT by default):
SELECT Column1, Column2 FROM table1_name
UNION ALL
SELECT Column1, Column2 FROM table2_name

EXCEPT and INTERSECT

  • To select the differences (EXCEPT) or common values (INTERSECT) between two queries:
SELECT * FROM TableA EXCEPT SELECT * FROM TableB
SELECT * FROM TableA INTERSECT SELECT * FROM TableB

ORDER BY

  • To order a result set by one or more column values:
SELECT * FROM table_name ORDER BY Column1
SELECT * FROM table_name ORDER BY Column1 DESC, Column2 ASC

The default order is ascending. If ordering by more than one column, each column can have a different order.

COMPUTE and COMPUTE BY Clauses

  • To generate totals that are appended to the end of an aggregate query result set:
SELECT Column1, Column2, Column3
FROM table_name
ORDER BY Column1, Column2
COMPUTE SUM(Column3)

The COMPUTE and COMPUTE BY clauses are not very useful in applications because the aggregated results are not in relational form and cannot be used in a dataset.

As of SQL Server 2008, the CUBE and ROLLUP operators are appended to the COMPUTE BY clause (see WITH CUBE, BY CUBE, WITH ROLLUP, and BY ROLLUP).

FOR Clause

The FOR clause is used with either the XML or BROWSE option in a SELECT statement. However, the BROWSE and XML options are unrelated. FOR XML specifies that the result set is returned in XML format. FOR BROWSE is used when accessing data through the DB-Library so that rows can be browsed and updated one row at a time in an optimistic locking environment. The FOR BROWSE option has several requirements. For more information, consult SQL Server Books Online, under the topic “Browse Mode.”

SELECT * FROM table_name FOR XML {XML Option}
SELECT * FROM table_name FOR BROWSE

OPTION Clause

The OPTION clause is used in a SELECT statement to provide a query hint that will override the query optimizer and specify an index or specific join mechanism to be used along with other hint options.

CASE

  • To evaluate one or more expressions and return one or more specified values based on the evaluated expression:
SELECT expression = CASE Column
WHEN value THEN resultant_value
WHEN value2 THEN resultant_value2
...
ELSE alternate_value
END
FROM table
SELECT value =
        CASE
        WHEN column IS NULL THEN value
        WHEN column {expression true} THEN different_value
        WHEN column {expression true} and price {expression true} THEN other_value
        ELSE different_value
        END,
       column2
FROM table

INSERT

  • To add a new row to a table:
INSERT table (column list)
VALUES
(column values)
INSERT table
SELECT columns FROM source expression
INSERT table
EXEC stored_procedure

The following is the multitable INSERT syntax introduced in SQL Server 2008:

INSERT table (column list)
VALUES
(column values),
(column values),
(column values)

warning

Note that column values are comma-separated and must appear in the same order as in the column list or as they are defined in the table.

UPDATE

  • To update selected columns in a table:
UPDATE table SET column1 = expression1, column2 = expression2
WHERE filter_expression
  • To update a table based on the contents of another table:
UPDATE table SET column1 = expression
FROM table INNER JOIN table2
ON table.column = table2.column
WHERE table.column = table2.column

DELETE

  • To delete selected rows from a table:
DELETE table
WHERE filter_expression
  • To delete rows from a table based on the contents of a different table:
DELETE table
FROM table INNER JOIN table2
ON table.column = table2.column
WHERE column = filter_expression

DECLARE @local_variable

This creates a named object that temporarily holds a value with the data type defined in the declaration statement. Local variables only have scope within the calling batch or stored procedure. The value of a local variable can be set with either a SET or SELECT operation. SELECT is more efficient than SET and has the advantage of populating multiple variables in a single operation, but the SELECT operation cannot be confined with any data retrieval operation.

DECLARE @local_variable AS int
SET @local_variable = integer_expression
DECLARE @local_variable1 AS int, @local_variable2 AS varchar(55)
SELECT @local_variable1 = integer_column_expression, @local_variable2 =
character_column_expression FROM table

SET

The SET operator has many functions, from setting the value of a variable to setting a database or connection property. The SET operator is divided into the categories shown in Table A.2.

Table A.2

Category Alters the Current Session Settings For
Date and time Handling date and time data
Locking Handling SQL Server locking
Miscellaneous Miscellaneous SQL Server functionality
Query execution Query execution and processing
SQL-92 settings Using the SQL-92 default settings
Statistics Displaying statistics information
Transactions Handling SQL Server transactions

LIKE

LIKE is a pattern-matching operator for comparing strings or partial strings.

  • To compare a string value where the compared string is anywhere in the string:
SELECT * FROM table WHERE column1 LIKE ‘%string%’
  • To compare a string value where the compared string is at the beginning of the string:
SELECT * FROM table WHERE column1 LIKE ‘string%’
  • To compare a string value where the compared string is at the end of the string:
SELECT * FROM table WHERE column1 LIKE ‘%string’
  • To compare a string value where a specific character or character range is in the string:
SELECT * FROM table WHERE column1 LIKE ‘[a-c]’
SELECT * FROM table WHERE column1 LIKE ‘[B-H]olden’
  • To compare a string value where a specific character or character range is not in the string:
SELECT * FROM table WHERE column1 LIKE ‘[Mˆc]%’ -Begins with M but not Mc

ALTER TABLE

  • To alter a table's structure by adding or removing table objects such as columns, constraints, and partitions, or by enabling and disabling triggers:
ALTER TABLE table_name ADD new_column int NULL;
ALTER TABLE table_name ADD CONSTRAINT new_check CHECK (check expression) ;
ALTER TABLE table_name DROP COLUMN existing_column;
ALTER TABLE table_name ENABLE TRIGGER trigger_name;
ALTER TABLE table_name DISABLE TRIGGER trigger_name;

PIVOT Operator

  • To cause a normalized columnar set to be transformed and restructured with repeating column values according to a predefined column list specification:
SELECT Column3, [Col2_List_Val1], [Col2_List_Val2], [Col2_List_Val3]... FROM
 (
     SELECT
          Column1  -- Value to aggregate as measure value in pivot cells
        , Column2  -- Value for column headers as column list
        , Column3  -- Value for row headers
     FROM source_table_name
 )   AS Source
PIVOT
 (
     Sum(Column1) FOR Column2
        IN ([Col2_List_Val1], [Col2_List_Val2], [Col2_List_Val3]...)
 )   AS pvt

UNPIVOT Operator

  • To cause a pivoted result set to be transformed into a normalized, columnar table structure:
SELECT
 Column3, Column2, Column1  -- columns same as pivot source above
FROM
 (
    SELECT
      Column1
    , [Col2_List_Val1], [Col2_List_Val2], [Col2_List_Val3]... FROM
    FROM pivot_source_table_name
 ) AS pvt
UNPIVOT
 (
      Column1 FOR Column2
       IN ([Col2_List_Val1], [Col2_List_Val2], [Col2_List_Val3]...)
 )
 AS unpvt

CREATE DATABASE

  • To create a database and all associated files:
CREATE DATABASE new_database
ON (
   NAME = ‘logical_name’,
   FILENAME = ‘physical_file_location’,
   SIZE = initial_size_in_MB,
   MAXSIZE = max_size_in_MB, --If no MAXSIZE specified unlimited growth is assumed
   FILEGROWTH = percentage_OR_space_in_MB)
LOG ON
( NAME = ‘logical_log_name’,
   FILENAME = ‘physical_file_location’,
   SIZE = initial_size_in_MB,
   MAXSIZE = max_size_in_MB, --If no MAXSIZE specified unlimited growth is assumed
   FILEGROWTH = percentage_OR_space_in_MB)
COLLATE database_collation

CREATE DEFAULT

  • To create a database-wide default value that can then be bound to columns in any table to provide a default value:
CREATE DEFAULT default_name AS default_value
--bind the default to a table column
sp_bindefault default_name, ‘table.column’

CREATE PROCEDURE

  • To create a new stored procedure:
CREATE PROCEDURE proc_name @variable variable_data_type ...n
AS
...procedure code

or

CREATE PROC proc_name @variable variable_data_type ...n
AS
...procedure code

CREATE RULE

  • To create a database-wide rule, much like a check constraint, that can then be bound to individual columns in tables throughout the database:
CREATE RULE rule_name AS rule_expression
--bind the rule to a table column
sp_bindrule rule_name, ‘table.column’

CREATE TABLE

  • To create a new table:
CREATE TABLE table_name (
Column1 data_type nullability column_option,
Column2 data_type nullability column_option,
Column3 data_type nullability column_option,
--Column_option = Collation, IDENTITY, KEY...
  • To create a new partitioned table:
CREATE TABLE partitioned_table_name (Column1 int, Column2 char(10))
Column1 data_type nullability column_option,
Column2 data_type nullability column_option,
Column3 data_type nullability column_option
ON partition_scheme_name (column)

CREATE TRIGGER

  • To create a new trigger on a table that fires after a DML event:
CREATE TRIGGER trigger_name
ON table_name FOR dml_action -INSERT, UPDATE or DELETE
AS
...trigger_code
  • To create a new trigger on a table that fires instead of a DML event:
CREATE TRIGGER trigger_name
ON view_or_table_name INSTEAD OF dml_action -INSERT, UPDATE or DELETE
AS
...trigger_code

CREATE VIEW

  • To create a new view:
CREATE VIEW view_name
AS
...Select Statement

CREATE SCHEMA

  • To create a new database schema with the option of specifying a non-dbo owner with the AUTHORIZATION clause:
CREATE SCHEMA schema_name AUTHORIZATION user_name

CREATE PARTITION FUNCTION

  • To create a partition function to use when physically partitioning tables and indexes:
CREATE PARTITION FUNCTION partition_function_name ( input_parameter_type )
AS RANGE LEFT -- or RIGHT
FOR VALUES (value1, value2, value3, ...n)

CREATE PARTITION SCHEME

  • To create a partition scheme to use when physically partitioning tables and indexes:
CREATE PARTITION SCHEME partition_scheme_name
AS PARTITION partition_function_name
TO (filegroup1, filegroup2, filegroup3, ...n)

Script Comment Conventions

  • Inline comment:
SELECT ProductID, Name AS ProductName   -- Comment text
  • Single-line comment:
/* Comment text */

or

-- Comment text
  • Comment block:
/***************************************************
     spProductUpdateByCategory
     Created by Paul Turley, 5-21-11
     [email protected]
     Updates product price info for a category
     Revisions:
     3-24-12 - Fixed bug that formatted C:
               drive if wrong type was passed in.
****************************************************/

Reserved Words

By convention, reserved words should not be used as names of objects. Reserved words typically are easy to see in SQL Server Management Studio, which changes the color of reserved words to blue. If the object names are delimited with double quotes or square brackets, which they often are if you are using a graphical tool to create queries, they may not show up as being color-coded.

The keywords shown in Table A.3 have significant meaning within T-SQL and should be avoided in object names and expressions. If any of these words must be used in a SQL expression, they must be contained within square brackets ([ ]).

Table A.3

ABLESAMPLE EXIT PROC
ADD EXTERNAL PROCEDURE
ALL FETCH PUBLIC
ALTER FILE RAISERROR
AND FILLFACTOR READ
ANY FOR READTEXT
AS FOREIGN RECONFIGURE
ASC FREETEXT REFERENCES
AUTHORIZATION FREETEXTTABLE REPLICATION
BACKUP FROM RESTORE
BEGIN FULL RESTRICT
BETWEEN FUNCTION RETURN
BREAK GOTO REVERT
BROWSE GRANT REVOKE
BULK GROUP RIGHT
BY HAVING ROLLBACK
CASCADE HOLDLOCK ROWCOUNT
CASE IDENTITY ROWGUIDCOL
CHECK IDENTITY_INSERT RULE
CHECKPOINT IDENTITYCOL SAVE
CLOSE IF SCHEMA
CLUSTERED IN SECURITYAUDIT
COALESCE INDEX SELECT
COLLATE INNER SEMANTICKEYPHRASETABLE
COLUMN INSERT SEMANTICSIMILARITYDETAILSTABLE
COMMIT INTERSECT SEMANTICSIMILARITYTABLE
COMPUTE INTO SESSION_USER
CONSTRAINT IS SET
CONTAINS JOIN SETUSER
CONTAINSTABLE KEY SHUTDOWN
CONTINUE KILL SOME
CONVERT LEFT STATISTICS
CREATE LIKE SYSTEM_USER
CROSS LINENO TABLE
CURRENT LOAD TEXTSIZE
CURRENT_DATE MERGE THEN
CURRENT_TIME NATIONAL TO
CURRENT_TIMESTAMP NOCHECK TOP
CURRENT_USER NONCLUSTERED TRAN
CURSOR NOT TRANSACTION
DATABASE NULL TRIGGER
DBCC NULLIF TRUNCATE
DEALLOCATE OF TRY_CONVERT
DECLARE OFF TSEQUAL
DEFAULT OFFSETS UNION
DELETE ON UNIQUE
DENY OPEN UNPIVOT
DESC OPENDATASOURCE UPDATE
DISK OPENQUERY UPDATETEXT
DISTINCT OPENROWSET USE
DISTRIBUTED OPENXML USER
DOUBLE OPTION VALUES
DROP OR VARYING
DUMP ORDER VIEW
ELSE OUTER WAITFOR
END OVER WHEN
ERRLVL PERCENT WHERE
ESCAPE PIVOT WHILE
EXCEPT PLAN

ODBC Reserved Words

Although the ODBC keywords listed in Table A.4 are not strictly prohibited, as a best practice to prevent driver inconsistencies, they should be avoided.

Table A.4

ABSOLUTE EXEC OVERLAPS
ACTION EXECUTE PAD
ADA EXISTS PARTIAL
ADD EXTERNAL PASCAL
ALL EXTRACT POSITION
ALLOCATE FALSE PRECISION
ALTER FETCH PREPARE
AND FIRST PRESERVE
ANY FLOAT PRIMARY
ARE FOR PRIOR
AS FOREIGN PRIVILEGES
ASC FORTRAN PROCEDURE
ASSERTION FOUND PUBLIC
AT FROM READ
AUTHORIZATION FULL REAL
AVG GET REFERENCES
BEGIN GLOBAL RELATIVE
BETWEEN GO RESTRICT
BIT GOTO REVOKE
BIT_LENGTH GRANT RIGHT
BOTH GROUP ROLLBACK
BY HAVING ROWS
CASCADE HOUR SCHEMA
CASCADED IDENTITY SCROLL
CASE IMMEDIATE SECOND
CAST IN SECTION
CATALOG INCLUDE SELECT
CHAR INDEX SESSION
CHAR_LENGTH INDICATOR SESSION_USER
CHARACTER INITIALLY SET
CHARACTER_LENGTH INNER SIZE
CHECK INPUT SMALLINT
CLOSE INSENSITIVE SOME
COALESCE INSERT SPACE
COLLATE INT SQL
COLLATION INTEGER SQLCA
COLUMN INTERSECT SQLCODE
COMMIT INTERVAL SQLERROR
CONNECT INTO SQLSTATE
CONNECTION IS SQLWARNING
CONSTRAINT ISOLATION SUBSTRING
CONSTRAINTS JOIN SUM
CONTINUE KEY SYSTEM_USER
CONVERT LANGUAGE TABLE
CORRESPONDING LAST TEMPORARY
COUNT LEADING THEN
CREATE LEFT TIME
CROSS LEVEL TIMESTAMP
CURRENT LIKE TIMEZONE_HOUR
CURRENT_DATE LOCAL TIMEZONE_MINUTE
CURRENT_TIME LOWER TO
CURRENT_TIMESTAMP MATCH TRAILING
CURRENT_USER MAX TRANSACTION
CURSOR MIN TRANSLATE
DATE MINUTE TRANSLATION
DAY MODULE TRIM
DEALLOCATE MONTH TRUE
DEC NAMES UNION
DECIMAL NATIONAL UNIQUE
DECLARE NATURAL UNKNOWN
DEFAULT NCHAR UPDATE
DEFERRABLE NEXT UPPER
DEFERRED NO USAGE
DELETE NONE USER
DESC NOT USING
DESCRIBE NULL VALUE
DESCRIPTOR NULLIF VALUES
DIAGNOSTICS NUMERIC VARCHAR
DISCONNECT OCTET_LENGTH VARYING
DISTINCT OF VIEW
DOMAIN ON WHEN
DOUBLE ONLY WHENEVER
DROP OPEN WHERE
ELSE OPTION WITH
END OR WORK
END-EXEC ORDER WRITE
ESCAPE OUTER YEAR
EXCEPT OUTPUT ZONE
EXCEPTION

Future Reserved Words

Table A.5 contains keywords that may be reserved in future editions of SQL Server.

Table A.5

ABSOLUTE HOST RELATIVE
ACTION HOUR RELEASE
ADMIN IGNORE RESULT
AFTER IMMEDIATE RETURNS
AGGREGATE INDICATOR ROLE
ALIAS INITIALIZE ROLLUP
ALLOCATE INITIALLY ROUTINE
ARE INOUT ROW
ARRAY INPUT ROWS
ASENSITIVE INT SAVEPOINT
ASSERTION INTEGER SCROLL
ASYMMETRIC INTERSECTION SCOPE
AT INTERVAL SEARCH
ATOMIC ISOLATION SECOND
BEFORE ITERATE SECTION
BINARY LANGUAGE SENSITIVE
BIT LARGE SEQUENCE
BLOB LAST SESSION
BOOLEAN LATERAL SETS
BOTH LEADING SIMILAR
BREADTH LESS SIZE
CALL LEVEL SMALLINT
CALLED LIKE_REGEX SPACE
CARDINALITY LIMIT SPECIFIC
CASCADED LN SPECIFICTYPE
CAST LOCAL SQL
CATALOG LOCALTIME SQLEXCEPTION
CHAR LOCALTIMESTAMP SQLSTATE
CHARACTER LOCATOR SQLWARNING
CLASS MAP START
CLOB MATCH STATE
COLLATION MEMBER STATEMENT
COLLECT METHOD STATIC
COMPLETION MINUTE STDDEV_POP
CONDITION MOD STDDEV_SAMP
CONNECT MODIFIES STRUCTURE
CONNECTION MODIFY SUBMULTISET
CONSTRAINTS MODULE SUBSTRING_REGEX
CONSTRUCTOR MONTH SYMMETRIC
CORR MULTISET SYSTEM
CORRESPONDING NAMES TEMPORARY
COVAR_POP NATURAL TERMINATE
COVAR_SAMP NCHAR THAN
CUBE NCLOB TIME
CUME_DIST NEW TIMESTAMP
CURRENT_CATALOG NEXT TIMEZONE_HOUR
CURRENT_DEFAULT_TRANSFORM_GROUP NO TIMEZONE_MINUTE
CURRENT_PATH NONE TRAILING
CURRENT_ROLE NORMALIZE TRANSLATE_REGEX
CURRENT_SCHEMA NUMERIC TRANSLATION
CURRENT_TRANSFORM_GROUP_FOR_TYPE OBJECT TREAT
CYCLE OCCURRENCES_REGEX TRUE
DATA OLD UESCAPE
DATE ONLY UNDER
DAY OPERATION UNKNOWN
DEC ORDINALITY UNNEST
DECIMAL OUT USAGE
DEFERRABLE OUTPUT USING
DEFERRED OVERLAY VALUE
DEPTH PAD VAR_POP
DEREF PARAMETER VAR_SAMP
DESCRIBE PARAMETERS VARCHAR
DESCRIPTOR PARTIAL VARIABLE
DESTROY PARTITION WHENEVER
DESTRUCTOR PATH WIDTH_BUCKET
DETERMINISTIC PERCENT_RANK WINDOW
DICTIONARY PERCENTILE_CONT WITHIN
DIAGNOSTICS PERCENTILE_DISC WITHOUT
DISCONNECT POSITION_REGEX WORK
DOMAIN POSTFIX WRITE
DYNAMIC PREFIX XMLAGG
EACH PREORDER XMLATTRIBUTES
ELEMENT PREPARE XMLBINARY
END-EXEC PRESERVE XMLCAST
EQUALS PRIOR XMLCOMMENT
EVERY PRIVILEGES XMLCONCAT
EXCEPTION RANGE XMLDOCUMENT
FALSE READS XMLELEMENT
FILTER REAL XMLEXISTS
FIRST RECURSIVE XMLFOREST
FLOAT REF XMLITERATE
FOUND REFERENCING XMLNAMESPACES
FREE REGR_AVGX XMLPARSE
FULLTEXTTABLE REGR_AVGY XMLPI
FUSION REGR_COUNT XMLQUERY
GENERAL REGR_INTERCEPT XMLSERIALIZE
GET REGR_R2 XMLTABLE
GLOBAL REGR_SLOPE XMLTEXT
GO REGR_SXX XMLVALIDATE
GROUPING REGR_SXY YEAR
HOLD REGR_SYY ZONE
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.15.22.160