SQL - Datos no existente en una tabla

   
Vista:

Datos no existente en una tabla

Publicado por Cglez (14 intervenciones) el 30/03/2011 04:32:11
Hola, a todos!

Tengo una tabla de clientes con los siguientes campos:

ID, NOMBRE, DIRECCION, POBLACION, ESTADO,.........PERO NO TENGO EL CAMPO "TIPO CLIENTE" que debe ser A o B.

Necesito un query para un reporte donde me arroje el tipo de cliente sin que se le añada ese registro a la tabla.

SELECT ID, NOMBRE, DIRECCION, POBLACION, ESTADO, TIPOCLIENTE FROM CLIENTES

Gracias a quien me pueda ayudar.

Saludos!
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

CORRECCION

Publicado por Cglez (14 intervenciones) el 30/03/2011 04:53:10
El tipo cliente debe ser A
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

Datos no existente en una tabla

Publicado por Leonardo Josué (877 intervenciones) el 30/03/2011 18:26:51
Hola Cglez:

A ver, vamos por partes porque no me quedó muy claro cual es el problema. Por lo que entendí de tu post tienes una tabla llamada CLIENTES, y dices que hay que incluir el campo "TIPO CLIENTE", pero que no tienes ese campo en la tabla (¿?), si no lo tienes entonces cuál es el criterio para determinar si es un TIPO CLIENTE A o B?, aquí podrías utilizar un CASE-WHEN para determinar el tipo,

SELECT
D, NOMBRE, DIRECCION, POBLACION, ESTADO,
CASE WHEN (aquí pones la condición) THEN 'A' ELSE 'B' END TIPOCLIENTE
FROM CLIENTES

Ahora bien, no sé si te refieras a que en tu tabla CLIENTES tienes un código, pero no una descripción para el TIPO es decir algo como esto:

TABLA CLIENTES
Nombre|Tipo
-------------------------
Leonardo|1
Luis|2
Francisco|1

TABLA TIPOS_CLIENTES
Tipo|Descripcion
---------------------------------------
1|Cliente Tipo A
2|Cliente Tipo B

Si quisieras obtener un reporte así:

Nombre|Tipo Cliente
-------------------------------------
Leonardo|Cliente Tipo A
Luis|Cliente Tipo B
Francisco|Cliente Tipo A

entonces deberías hacer algo como esto:

SELECT T1.Nombre, T2.Descripcion as Tipo_Cliente
FROM CLIENTES T1
INNER JOIN TIPOS_CLIENTES T2 ON T1.tipo = T2.tipo

Si nada de esto te sirve, deberías tratar de mejorar la explicación de tu problema, poner algunos datos de ejemplo de tus tablas y mencionar qué manejador de BD estás utilizando. Entre más información nos puedas dar más posibilidades hay de poder ayudarte

Saludos.
Leo.
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

Datos no existente en una tabla

Publicado por Cglez (14 intervenciones) el 30/03/2011 18:54:10
Leonardo Josué, de antemano gracias por tu apoyo.

Me explico: Uso sql2008.

Quiero hacer una consulta sql extrayendo los datos de la tabla clientes donde están contenidos los registros de ID, NOMBRE, DIRECCION, POBLACION,(excepto)TIPOCLIENTE. Este último dato (TIPO CLIENTE) no existe en la tabla clientes. Pero no quiero añadirle a la tabla el registro "TIPO CLIENTE". Habrá la posibilidad de que con una instrucción sql me dé los datos antes mencionados y se visualice tipo cliente que debe ser A, aunque no exista en la tabla?

Mi tabla
CLIENTES
----------------------------
ID | NOMBRE | DIRECCION | POBLACION

01 | LUIS | CALLE # 1 | CALZADA 2

Pero necesito que en la consulta aparezca TIPO CLIENTE que no existe en la tabla y donde todos los clientes son tipo A. Anteriormente había escrito que debería ser A o B, pero solo es A. Lo anterior fue un error (TIPOCLIENTE B).

Saludos!
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

Datos no existente en una tabla

Publicado por Leonardo Josué (877 intervenciones) el 30/03/2011 20:31:39
Hola de nuevo Cglez:

Si todos tus clientes son de tipo "A" lo único que tendrías que hacer es lo siguiente:

declare @CLIENTES table (ID varchar(2), NOMBRE varchar(50), DIRECCION varchar(50), POBLACION varchar(50))
insert into @CLIENTES values ('01', 'HUGO', 'CALLE # 1', 'CALZADA 2')
insert into @CLIENTES values ('02', 'PACO', 'CALLE # 2', 'CALZADA 4')
insert into @CLIENTES values ('03', 'LUIS', 'CALLE # 3', 'CALZADA 5')

--Sin la columna TIPOCLIENTE
select ID, NOMBRE, DIRECCION, POBLACION from @CLIENTES T1

--Agregando la columna TIPOCLIENTE
select ID, NOMBRE, DIRECCION, POBLACION, 'A' AS TIPOCLIENTE from @CLIENTES T1

El resultado de la segunda consulta queda así:
ID|NOMBRE|DIRECCION|POBLACION|TIPOCLIENTE
01|HUGO|CALLE # 1|CALZADA 2|A
02|PACO|CALLE # 2|CALZADA 4|A
03|LUIS|CALLE # 3|CALZADA 5|A

Como te mencioné en mi primer post, si tienes varios tipos de clientes entonces deberás utilizar una sentencia CASE-WHEN para asignar el tipo de acuerdo a el criterio que establezcas.

Haz la prueba a ver si es lo que necesitas y nos comentas los resultados.

Saludos
Leo.
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

Datos no existente en una tabla

Publicado por Cglez (14 intervenciones) el 30/03/2011 21:18:45
Leonardo Josué, un millón de gracias por tu ayuda. Sí funcionó.
Saludos!
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