viernes, 31 de julio de 2020

247. Obtener un valor de un campo de sql separado por un caracter (split)

Tenemos el siguiente problema, existe en una tabla un campo separado por un ID especial por ejemplo

1|hola|mexico|que tal

Estos valores se encuentran en un solo campo, pero deseamos que solo uno de ellos aparezca en la consulta por ejemplo 

mexico

¿Cómo lo hacemos?

1. Para poder manipular el dato de manera eficiente, podemos convertirlo a un campo de tipo XML

 cast(('<X>'+replace(SalidaSeparada,'|' ,'</X><X>')+'</X>') as xml)

este paso reemplaza el separador y convierte el campo en un campo de XML

2. Ejecutemos esta consulta dentro de otra para poder manipularla como un capo tipo XML

select  
   salida.value('(./X)[15]', 'nvarchar(max)') as Salida from (
  select cast(('<X>'+replace(SalidaSeparada,'|' ,'</X><X>')+'</X>') as xml) as salida 
   from  [tabla] with(nolock) ) as tabla

3. La siguiente función nos permite obtener el campo que se encuentra en una posición especifica

salida.value('(./X)[15]', 'nvarchar(max)') 

felices lineas

domingo, 19 de julio de 2020

246. service comand not found linux

Este año planeaba que la escritura de este blog se normalizara paro ha pasado todo lo contrario, cada vez he escrito en forma mas esporádica, sin embargo continuara siendo una pequeña guía para aquel que lo necesite, con temas de computo....

En algunas ocasiones en linux los comandos no se muestran pese a estar instalados, si el comando que buscas se encuentra en sbin, como en el caso de service que es el que se muestra en este ejemplo, es tan sencillo como ejecutar desde la consola.

PATH=$PATH;/sbin

con esto se incluirá la ruta y se podrán ejecutar los comandos


Felices líneas
El alien de México ha llegado