Tips.cl

Bases de Datos

Concatenar Varios Campos en uno Solo

by acastro on Aug.19, 2009, under MySql

Les ha pasado que quieren saber cuantos registros tiene un campo y cuando lo despliegan les genera un listado de datos, eje:

RUT                              ID

1                                  1-9

2                                  1-9

3                                  1-9

4                                  1-K

bueno, usando una instrucción llamada group_concat lo pueden desplegar asi:

RUT                              ID

1-9                              1,2,3

1-K                              4

la query seria asi:

SELECT rut, CONCAT(GROUP_CONCAT((id) SEPARATOR ","))
FROM mi_tabla
GROUP BY rut;

más información en: http://mysql.conclase.net/curso/index.php?fun=GROUP_CONCAT

espero les sirva.

Saludos

Ac

1 Comentario :, , más...

Usando FOR XML EXPLICIT

by Rodrigo Olivares on Jul.23, 2009, under Bases de Datos, SqlServer, Xml

Lamentablemente en SQL Server 2000 no contamos con selecciones anidadas en las consultas para generar XML con una mejor semántica. Es por eso que es útil el uso de FOR XML EXPLICIT.

Baya Pavliashvili escribe un post que ayuda bastante con este tema.

Hay que tener en cuenta que esta forma de extraer XML es la que tiene más CONTRAS en comparación con las demás en cuanto a rendimiento y reutilización.

1 Comentario :, , , , , , , más...

Ocupar GETDATE en una función SQL Server 2000

by MigueliTUX on Jun.16, 2009, under SqlServer, Windows

Estaba haciendo una función es SQL Server 2000 y necesitaba recuperar la fecha del día, para lo cual pensé de inmediato en GETDATE(), pero sorpresa en SQL Server 2000 no se permite utilizar GETDATE en las funciones
La solución esta aquí
Lo primero que hice fue crear una vista que solo me retornara la fecha:

1
2
3
CREATE  VIEW dbo.v_fecha_actual
AS
SELECT     GETDATE() AS FechaActual

Y luego creo la función

1
2
3
4
5
6
7
8
9
10
11
12
ALTER FUNCTION fn_edad(@FECHA_NACIMIENTO DATETIME)
RETURNS INT
AS
BEGIN
RETURN(
SELECT DATEDIFF (
YEAR  ,
CONVERT(DATETIME,@FECHA_NACIMIENTO),
( SELECT  fechaactual FROM dbo.v_fecha_actual)
)
)
END

y para finalizar la llamada

1
SELECT DBO.fn_edad('1977-01-01')

Nota: tanto la creacion de la vista como la función fueron realizadas con el usuario DBO de la base, es por eso que en llamada de la función como en la función misma aparece el DBO, uds lo cambian por el usuario correspondiente

6 Comentarios :, , más...

Cómo determinar la versión de SQL Server

by MigueliTUX on May.18, 2009, under Bases de Datos, SqlServer

Para saber qué versión de Microsoft SQL Server  se está ejecutando, conéctate a SQL Server y ejecuta la siguiente instrucción

SELECT  SERVERPROPERTY(’productversion’), SERVERPROPERTY (’productlevel’), SERVERPROPERTY (’edition’)

te retornara algo así:

8.00.2039             SP4               Developer Edition

3 Comentarios :, , más...

Necesitas saber la version de Sql Server

by MigueliTUX on May.18, 2009, under SqlServer

para saber la version de Sql Server

SELECT @@VERSION

1 Comentario :, , más...

Buscas algun tips?

Busca aquí:

contactate con nosotos contacto@tips.cl

Visita nuestras Web amigas!

Web Amigas...