Importar un subconjunto de los datos usando SQL

Cuando usted importa datos de una base de datos con ODBC, puede usar expresiones Structured Query Language (SQL) para importar solo los registros (filas) que desee. SQL se utiliza en muchas aplicaciones de bases de datos. Minitab no realiza acciones con la expresión SQL, solo la pasa a la base de datos.

Seleccionar los campos que se importarán

  1. Elija Archivo > Consultar base de datos (ODBC).
  2. Seleccione un origen de datos. Si se le solicita, seleccione la base de datos.
  3. En el cuadro de diálogo Base de datos de consulta (ODBC), en la lista desplegable Tablas disponibles, seleccione la tabla que desea consultar.
  4. Utilice el botón de la flecha para mover los campos que usted desea importar a Campos seleccionados.
  5. Haga clic en Utilizar filas.
  6. En Utilizar filas, ingrese una expresión que defina los registros que desea importar. Estos registros se convierten en filas en Minitab. Las expresiones comienzan con la palabra clave "where" y contienen nombres de campo, operadores lógicos (tales como "And" y "=" ), funciones SQL y valores. Para obtener más información sobre las funciones SQL admitidas, consulte la documentación de su aplicación de base de datos.
  7. Haga clic en Aceptar en cada cuadro de diálogo.

Directrices para la sintaxis de las expresiones SQL

Las reglas de sintaxis varían entre los controladores ODBC para las diferentes aplicaciones de base de datos. Si necesita ayuda con la sintaxis, comuníquese con el administrador de su base de datos.

Valores de texto
La sintaxis de valores de texto debe seguir las reglas de sintaxis del controlador ODBC, de la siguiente manera:
  • En Microsoft® Access y muchas otras bases de datos, encierre los valores de texto entre comillas simples (por ejemplo, 'Morristown').
  • Para las bases de datos Oracle o SQL Server, encierre los valores de texto entre dos conjuntos de comillas dobles (por ejemplo, ""Morristown"").
Valores numéricos
No encierre los números, como 300, entre caracteres especiales.
Valores de fecha/hora
Para las bases de datos de Access y dBASE, coloque las fechas entre signos de numeral (por ejemplo, #12/31/2016#). Para otras bases de datos, consulte la documentación de la aplicación. En lugar de ingresar una fecha específica, también puede utilizar una función de fecha/hora.
Nombres de campos
Los delimitadores de campo varían de acuerdo con el controlador ODBC. Si ingresa el nombre del campo al seleccionarlo de la lista de campos en el cuadro de diálogo Utilizar filas, Minitab colocará el campo entre los delimitadores que sean apropiados para su controlador ODBC.
Funciones
Para indicar que la función es una función ODBC y no una que es nativa de la aplicación de la base de datos de la cual usted está importando, utilice corchetes y las letras "fn" (por ejemplo, {fn SQRT(128)}). Si selecciona funciones de la lista en el cuadro de diálogo Utilizar filas, Minitab agregará automáticamente la sintaxis necesaria.
Caracteres comodines
Para caracteres comodines en todas las consultas SQL, utilice un símbolo de porcentaje (%) en lugar de un asterisco (*) y utilice un guión bajo (_) en lugar de un signo de interrogación (?).

Ejemplos de expresiones SQL para Microsoft® Access

La sintaxis para aplicaciones de base de datos distintas de Access podría ser diferente.

Nota

Para mejores resultados, no copie y pegue estas expresiones de la tabla. Escríbalas directamente en el cuadro de diálogo.

Datos que se importarán Expresión SQL
Registros del primer trimestre de 2017
where DATE >= #1/1/17# And DATE < #4/1/17#
Registros de empleados contratados desde el 1 de enero de 2010 que se encuentran en la División de finanzas.
where DATE_HIRED > #1/1/10# And DEPT = 'Finance'
Datos de los últimos 30 días
where `DateFieldName` > Now() - 30
Datos de ayer
where (Format(Now-1,'mm-dd-yy')=Format(DateFieldName,'mm-dd-yy'))

Por qué algunas funciones SQL podrían no funcionar

SQL tiene funciones ODBC que usted puede usar para construir expresiones. Sin embargo, un controlador ODBC específico pudiera no admitir todas las funciones ODBC. Por ejemplo, el controlador ODBC de Microsoft® Access no admite la función TIMESTAMPDIFF. Si recibe un mensaje de error, el mensaje se origina desde el controlador ODBC, no desde Minitab.

El siguiente es un ejemplo del mensaje de error que recibe cuando utiliza ODBC con la función TIMESTAMPDIFF para consultar Microsoft® Access:
“Estado de error DE SQL: 37000, Código de error nativo: FFFFF3E2, error ODBC: [Microsoft] [ODBC Microsoft® controlador de acceso] Función indefinida 'TIMESTAMPDIFF' en expresión."

Access suministra una función alternativa para TIMESTAMPDIFF. La función alternativa es DATEDIFF( ). La siguiente consulta recupera tres columnas del registro de un empleado. La primera columna es el número de días transcurridos desde la fecha de inicio del empleado hasta la fecha actual. La segunda y tercera columnas son el nombre y la fecha de inicio del empleado.

ODBC; Connect "DSN=Test;DBQ=Q:\Trumparc.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;PWD=msl;SystemDB=Q:\secured.mdw;UID=msl;"; SQLString "SELECT DateDiff('y', `StartDate`, Now()),`Name`,`StartDate` FROM `Employee`".