Funciones de Cadena en Access SQL - Microsoft Access

  • Published on
    01-Mar-2016

  • View
    15

  • Download
    0

DESCRIPTION

Funciones Access

Transcript

12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 1/62 respuestasMicrosoft Access (/temas/microsoft-access) el 17 dic. 01 Funciones de cadena en Access sqlHola.Te estara muy agradecido si pudieras informarme de como puedo sustituir la funcin de sql nativo replace odecode para poder utilizarla en una consulta de access sql.Muchsimas gracias.Seguir Responder (/usuarios/jodra)jodra1Respuesta de cescola (/usuarios/cescola)(/usuarios/cescola)La verdad es que no se que hacen esas funciones de sql nativo. Si me lo dices fijo quete puedo ayudarcArLeS!el 18 dic. 01 Muchas gracias por tu respuesta, te lo explico un poco mejor. Lo que realmentenecesito es una funcin que me permita sustituir uno o varios caracteres, por otroscaracteres dentro de una cadena.En en Sql de Oracle dicha funcin se llama replace, pero dentro del Sql que utilizaaccess no me la reconoce. Utilizo Access2000.el 18 dic. 01 (/usuarios/jodra)Para solucionar esto, crea una funcin pblica en un mdulo. Ah puedes utilizar cdigovisual basic y luego esa funcin la podrs llamar desde una consulta SQL-Access. (/usuarios/cescola)Para darte un servicio ms personalizado, utilizamos cookies propias y de terceros. Si siguesnavegando, entendemos que aceptas su uso segn nuestra poltica de cookies (/cookies).12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 2/6Aade un comentario a esta respuestaCrea un nuevo mdulo y aade el siguiente cdigo:Public Function SUSTITUIR(sSource As String, sText As String, sNewText As String)As StringSUSTITUIR = Replace(sSource, sText, sNewText, , , vbTextCompare)End FunctionAhora podrs utilizar la funcin en tus consultas. Para hacerlo, aqu tienes ladescripcin de los parmetros:sSource (primero parmetro) -> cadena originalsText (segundo parmetro) -> subcadena que quieres sustituirsNewText (tercer parmetro) -> texto que sustituir a la cadena sTextUn ejemplo sera (con una tabla ficticia, luego lo adaptas a tu estructura):SELECT TablaA.Campo1, SUSTITUIR(TablaA.Campo2;"Pepe";"Lus")FROM TablaAhora, cada vez que en el campo2 de tabla haya "Pepe", la consulta mostrar Lus ensu lugar.Espero que te haya ayudado. SUERTEcArLeS!el 18 dic. 01 1Respuesta de sofocles (/usuarios/sofocles)(/usuarios/sofocles)Estimado Usuario:A partir de la versin 2000 de Access, la funcin Replace de SQL tiene su homnimoen Access, con las mismas caractersticas.Si utilizas versiones anteriores, puedes utilizar una consulta de actualizacin, paraactualizar un campo por un valor nuevo, y en los criterios de seleccin indicar el valorantiguo que se desea reemplazar.Espero haberte ayudado.Saludos.Sofocles.el 18 dic. 01 12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 3/6Muchas gracias por tu respuesta, pero creo que no me he explicado bien. Lo querealmente necesito es una funcin que me permita sustituir uno o varios caracteres, porotros caracteres dentro de una cadena.En en Sql de Oracle dicha funcin se llama replace, pero dentro del Sql que utilizaaccess no me la reconoce. Utilizo Access2000.el 18 dic. 01 (/usuarios/jodra)Estimado Jodra:Creo que si entend tu pregunta desde el principio, lo que no tengo muy seguro, es queen la versin de Access 2000 exista la funcin Replace, pero en Access XP, que es laversin que yo utilizo, la he localizado y para que veas su mtodo y funcionamiento, laacompao para que la eches un vistazo.Replace (Funcin)DescripcinDevuelve una cadena en la que se reemplaz una subcadena especificada con otrasubcadena un nmero especificado de veces.SintaxisReplace(expresin, encontrar, reemplazarCon [, inicio[, contar[, comparar]]])La sintaxis de la funcin Replace consta de los siguientes argumentos con nombre:Parte Descripcin Expresin Requerido. Una expresin de cadena que contiene la subcadena quereemplazar. Encontrar Requerido. La subcadena que se busca. reemplazarCon Requerido. La subcadena de sustitucin. Inicio Opcional. La posicin dentro de la expresin donde se empezar a buscar lasubcadena. Si se omite, se supone que es 1. Contar Opcional. El nmero de sustituciones de subcadenas que se realizarn. Si seomite, el valor predeterminado es -1, que significa que se hagan todas las sustitucionesposibles. Comparar Opcional. El valor numrico que indica la clase de comparacin que serealizar cuando se evalen las subcadenas. Vea la seccin Valores para consultar losvalores posibles. ValoresEl argumento comparar puede tener los valores siguientes:Constante Valor Descripcin vbUseCompareOption -1 Realizar una comparacin utilizando el valor de la instruccinOption Compare. vbBinaryCompare 0 Realiza una comparacin binaria. vbTextCompare 1 Realizar una comparacin basada en el texto. vbDatabaseCompare 2 Slo para Microsoft Access. Realizar una comparacin basadaen la informacin de su base de datos. Valores de retorno(/usuarios/sofocles)12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 4/6Aade un comentario a esta respuesta Aade tu respuestaHaz clic para responder o pedir ms informacinNo es la respuesta que estabas buscando? Puedes explorar otras preguntas del tema Microsoft Access (/temas/microsoft-access) o hacer tu propia pregunta:La funcin Replace devuelve los valores siguientes:Si Reemplazar devuelve Expresin es de longitud cero Una cadena de longitud cero (""). expresin es Null Un error. Encontrar es de longitud cero Una copia de expresin. reemplazarCon es de longitud cero Una copia de expresin con todas las aparicionesde encontrar quitadas. Inicio > Len(expresin) Una cadena de longitud cero. Contar es 0 Una copia de expresin. ComentariosEl valor de retorno de la funcin Replace es una cadena con sustituciones hechas quecomienza en la posicin especificada por inicio y concluye al final de la cadenaexpresin. No es una copia de la cadena original desde el inicio al final.Esta funcin se puede utilizar en consultas de Access, en el cdigo VBA, enformularios e informes, etc.Espero que te sirva.Saludos.Sofocles.el 18 dic. 01 Escribe el ttulo de tu preguntaPreguntar12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 5/6PREGUNTAS RELACIONADASreplace (/categorias/tecnologia-e-internet/programacion/visual-fox-pro/respuestas/2675872/replace?utm_source=todoexpertos.com&utm_medium=web&utm_campaign=relatedquestions&utm_content=byquestion)procedimientos en sql plus 8.0.5 , 8.0.6 y 9.2.0 (/categorias/tecnologia-e-internet/bases-de-datos/oracle/respuestas/1553787/procedimientos-en-sql-plus-8-0-5-8-0-6-y-9-2-0?utm_source=todoexpertos.com&utm_medium=web&utm_campaign=relatedquestions&utm_content=byquestion)Acentos en access 2000 (/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/61735/acentos-en-access-2000?utm_source=todoexpertos.com&utm_medium=web&utm_campaign=relatedquestions&utm_content=byquestion)Cmo puedo sustituir un carcter por otro en el programa Microsoft Access?(/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/2218085/como-puedo-sustituir-un-caracter-por-otro-en-el-programa-microsoft-access?utm_source=todoexpertos.com&utm_medium=web&utm_campaign=relatedquestions&utm_content=byquestion)funcion DECODE en VB (/categorias/tecnologia-e-internet/programacion/visual-basic/respuestas/142207/funcion-decode-en-vb?utm_source=todoexpertos.com&utm_medium=web&utm_campaign=relatedquestions&utm_content=byquestion)Inicio (/) Sobre nosotros (/acerca-de) Ayuda (/ayuda) Blog (http://blog.todoexpertos.com) Contacto (/contacto) Condiciones de uso(/condiciones) Privacidad y cookies (/privacidad) 2014 Todoexpertos.com.Sguenos! (http://twitter.com/todoexpertos) 12/9/2014 Funciones de cadena en Access sql - Microsoft Accesshttp://www.todoexpertos.com/categorias/tecnologia-e-internet/bases-de-datos/microsoft-access/respuestas/83381/funciones-de-cadena-en-access-sql 6/6(http://www.facebook.com/todoexpertos) (https://plus.google.com/+todoexpertos)