Consultas SQL

Utilice el estándar ANSI SQL-92 para consultar bases de datos ODBC y bases de datos incrustadas.

Instrucciones

FactoryTalk Optix Studio
admite estas instrucciones en las consultas SQL:
  • SELECT
  • DELETE
    CONSEJO: Puede ejecutar una consulta
    DELETE
    para eliminar un registro. Puede realizar todas las demás operaciones usando los métodos OPC UA expuestos por los mismos objetos. Para obtener más información acerca de las instrucciones y cláusulas de SQL, consulte el estándar de SQL.
  • UPDATE
FactoryTalk Optix Studio
es parcialmente compatible con estas instrucciones en las consultas SQL:
  • CREATE
  • DROP

Valores literales

Valores literales compatibles
Tipo de valor literal
Ejemplo
Notas
Integral
1520
No utilice separadores de miles.
Utilice el tipo Int32.
Real
15.025
Utilice
.
como separador decimal.
Use el tipo Doble.
Científicos reales
2.7000001072883606E-1
Boolean
  • true
  • false
Utilice minúsculas para los valores booleanos.
Cadena
'string value'
Utilice comillas simples para delimitar el texto.
Para insertar una comilla simple (
'
) en una cadena de texto, escape la comilla simple con otra comilla simple. Por ejemplo, para escribir
'string'
, use dos comillas simples
''string''
en las cadenas.
Fecha y hora
"2004-05-23T14:25:10.487"
Use el formato de ISO8601 delimitado por comillas dobles.
La notación de fecha y hora no estándar es SQL ANSI estándar y se usa para evitar las palabras clave
DATE
,
TIME
y
TIMESTAMP
sin ambigüedad.
Identificador regular
  • Column1
  • Grüße
No utilice espacios.
Empieza con una letra en mayúscula o minúscula.
Puede contener dígitos numéricos, letras y el carácter de subrayado
_
.
Identificador delimitado
  • "Water level"
  • "SELECT"
Use comillas dobles (
"
) como delimitador.
En el identificador, utilice cualquier carácter excepto el del carácter
"
.
Se omite cualquier espacio al final del identificador.

Alias

Puede utilizar alias en los identificadores, las subconsultas de columnas derivadas y las tablas.
A continuación se muestran ejemplos de consultas con alias:
SELECT Timestamp AS T FROM Table1 WHERE ...
SELECT * FROM Table1 AS T WHERE ...
SELECT * FROM (SELECT * FROM Table1) AS SubQuery WHERE ...
CREATE TABLE Table1 AS SELECT Timestamp, Column1 FROM Table2

Operadores

Operadores compatibles
Operador
Ejemplo
IN
SELECT * FROM Table1 WHERE Column1 IN (10, 20, 30)
BETWEEN
SELECT * FROM Table1 WHERE Column1 BETWEEN 100 AND 200
LIKE
... WHERE column1 LIKE '%a'
... WHERE column1 LIKE '%a%'
... WHERE column1 LIKE '%bbpi!%ppo%' ESCAPE '!'
EXISTS
... WHERE EXISTS (SELECT Table1.Column1 FROM Table2)
IS
... WHERE column1 IS NULL
NOT
... WHERE column1 IS NOT NULL
... WHERE column1 NOT IS (10, 20)
... WHERE column1 NOT BETWEEN 100 AND 200
El operador
NOT
se aplica a todos los demás operadores.

Funciones de ventana

Funciones de ventana compatibles
Función
Ejemplo
ROW_NUMBER
ROW_NUMBER() OVER (ORDER BY Column2)
ROW_NUMBER() OVER (PARTITION ON Column1 ORDER BY Column2)
ROW_NUMBER() OVER (window_name PARTITION ON Column1 ORDER BY Column2)
RANK
RANK() OVER (PARTITION ON Column1 ORDER BY Column2)
DENSE_RANK
DENSE_RANK() OVER (PARTITION ON Column1 ORDER BY Column2)
AVG
AVG(Column1) OVER (PARTITION BY Column2)
SUM
,
MIN
,
MAX
SUM(Column1) OVER (PARTITION BY Column2)
COUNT
COUNT(Column1) OVER (PARTITION BY Column2)
COUNT(*) OVER (PARTITION BY Column2)
Entregue su opinión
¿Tiene dudas o comentarios acerca de esta documentación? Por favor deje su opinión aquí.