Access - SQL en Access

 
Vista:

SQL en Access

Publicado por Unai (14 intervenciones) el 27/04/2004 11:48:46
Se puede utilizar la funcion DECODE en una consulta bajo Access?? He hecho esto

SELECT [fal-nse].[num_nse], DECODE([fal-nse].[tip_nse],'A','ALBARAN DE VENTA','E','DOCUMENTO DE COMPRA','D','DEVOLUCION DE PROVEEDORES','R','ROTURAS','U','USO DE ALMACEN','S','TRANSFERENCIA ENTRE ALMACENES','O','ORDEN DE TRABAJO','G','REGULARIZACION DE EXISTENCIAS','OTROS'), [fal-nse].[ref_nse]
FROM (([fal-nse] INNER JOIN [fal-tr1] ON [fal-nse].[doc_nse]=[fal-tr1].[alb_tr1]) INNER JOIN [fal-mov] ON [fal-nse].[doc_nse]=[fal-mov].[doc_mov]) INNER JOIN [fal-doc] ON [fal-nse].[doc_nse]=[fal-doc].[doc_doc]
WHERE ((([fal-nse].[num_nse])=[Introduzca IMEI]));

Y me da este error La Funcion Decode no esta Definida en la expresion
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:SQL en Access

Publicado por juan quirch (13 intervenciones) el 27/04/2004 13:04:16
en access en vez del decode, que es usado al menos en pl-sql del oracle, tenés el IIF (sí inmediato), y la escritura es similar, pero con la ventaja que podés comparar por igual, menor o mayor, mientras que en el decode es siempre por igual.
te copio el ejemplo que trae la ayuda del access:

Function Comprobar (Prueba As Integer)
Comprobar = IIf((Prueba > 1000), "Grande", "Pequeño")
End Function

al igual que en DECODE, podés hacer nidos de IIF.
saludos, y espero te sea útil.
juan jose quirch
corrientes
argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:SQL en Access

Publicado por Unai (14 intervenciones) el 27/04/2004 13:14:15
Muchas gracias juan jose, pero lo estyo probando y a no ser q lo haga mal solo puedes hacer una comparacion por IIF si pudiesemos ponerme un ejemplo del anidado me ayudarias mucho.

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:SQL en Access

Publicado por juan quirch (13 intervenciones) el 27/04/2004 13:29:57
este ejemplo está fuera de una consulta sql, pero trabaja de la misma forma:

Iif(([Moneda]=0),'Pesos',Iif(([Moneda]=1),'Dólares','Mal Codif'))

fijate que la pregunta que va al lado del IIF
(Moneda=0)
debe tener su propio encierre entre paréntesis. aquí averigua si el código es 0, muestra pesos, si es 1, muestra dólares y por defecto, pone "Mal Codif". Moneda es una columna de una tabla, y no hacen falta los corchetes. en la versión de access que tengo, automáticamente pone los corchetes el propio sistema.
esto lo podés poner dentro de una consulta SQL, pero tené en cuenta los paréntesis entre los que tenés que encerrar la comparación.

juan quirch
corrientes
argentina
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar