Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > MySQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-11-2012
Artigas72 Artigas72 is offline
Miembro
NULL
 
Registrado: sep 2012
Ubicación: Mercedes / Uruguay
Posts: 13
Poder: 0
Artigas72 Va por buen camino
Exclamation Diferencia en MySQL!!

Hola, soy principiante en mysql y manejo de datos...
y hay algo que necesito, pero hasta ahora no he encontrado información relevante...
Seria algo como hacer la operación diferencia en MySQL...

esto es: Tengo 2 tablas y necesito saber que esta en la primera y no esta en la segunda...

Si alguién me puede dar una mano...
Sólo con un ejemplo me alcanza!

Desde ya, Muchas gracias!
Responder Con Cita
  #2  
Antiguo 08-11-2012
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
te recomiendo MySQL CookBook, ahi viene una receta para obtener eso, por cierto muy bien explicada y con ejemplo sencillo como el que quieres.

Si quieres un poco de teoria, tienes que hacer un "left join" de la tabla1 con la tabla2 suponiendo que tienen un campo que las relacione.

Digamos que
supongamos que tenemos tabla1 y tabla2 con un campo comun llamado folio, que es el que las relaciona.

hacemos:
Código SQL [-]
select tabla1.folio, tabla2.folio 
from tabla1
left join tabla2 on (tabla2.folio=tabla1.folio)
Todos los folios que no esten en tabla2 pero sí en tabla1 aparecen como Null

Filtrando el query:
Código SQL [-]
select tabla1.folio, tabla2.folio 
from tabla1
left join tabla2 on (tabla2.folio=tabla1.folio)
where tabla2.folio is null

Obtenemos solo los folios que existen en tabla1 pero no en tabla2, si quieres saber los que si existen en tabla2, basta con cambiar el "is null" por "is not null".
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #3  
Antiguo 08-11-2012
Artigas72 Artigas72 is offline
Miembro
NULL
 
Registrado: sep 2012
Ubicación: Mercedes / Uruguay
Posts: 13
Poder: 0
Artigas72 Va por buen camino
Voy a probarla ahora

Voy a probar este metodo ahora, pero encontre este aca:
Código SQL [-]
Mostrando registros 0 - 1 (2 total, Consulta levou 0.0009 segundos)
SELECT * 
FROM empleados
WHERE ci NOT 
IN (

SELECT ci
FROM cumple
WHERE fecha_hora_entrada > ( 
SELECT CURDATE( ) )
)
Sólo hay un problema: Zeos me tira error de SQL, pero lo probe en localhost y me anda lo más bien...
:/

PD.:
Ci -> Int
Fecha_Hora_entrada -> Datetime

:/ No se que puede ser!

Me tira error cerca de
Código SQL [-]
Select Curdate

La verdad que no se!
:/

Última edición por Artigas72 fecha: 08-11-2012 a las 02:30:06.
Responder Con Cita
  #4  
Antiguo 08-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por Artigas72 Ver Mensaje
Sólo hay un problema: Zeos me tira error de SQL, pero lo probe en localhost y me anda lo más bien...
Hola Artigas72.

Para poder ayudarte mejor, es conveniente que copies y pegues la porción de código donde se está provocando el error. No menos importante es que pongas textualmente el mensaje de error que estas recibiendo.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 08-11-2012
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Cita:
Empezado por Artigas72 Ver Mensaje
Voy a probar este metodo ahora, pero encontre este aca:
Código SQL [-]
Mostrando registros 0 - 1 (2 total, Consulta levou 0.0009 segundos)
SELECT * 
FROM empleados
WHERE ci NOT 
IN (

SELECT ci
FROM cumple
WHERE fecha_hora_entrada > ( 
SELECT CURDATE( ) )
)
Sólo hay un problema: Zeos me tira error de SQL, pero lo probe en localhost y me anda lo más bien...
:/

PD.:
Ci -> Int
Fecha_Hora_entrada -> Datetime

:/ No se que puede ser!

Me tira error cerca de
Código SQL [-]
Select Curdate

La verdad que no se!
:/
No entiendo de las funciones de MySQL pero si quitas el SELECT CURDATE y solo dejar el CURDATE ya que es un función de MySQL y no necesita el SELECT, dejando la consulta en:
Código SQL [-]
SELECT * 
  FROM empleados
  WHERE ci NOT IN (
                   SELECT ci
                     FROM cumple
                     WHERE fecha_hora_entrada > CURDATE()
                  )
Un saludo
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita
  #6  
Antiguo 08-11-2012
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Artigas72 Ver Mensaje
Voy a probar este metodo ahora, pero encontre este aca:
Código SQL [-]
SELECT * 
FROM empleados
WHERE ci NOT 
IN (

SELECT ci
FROM cumple
WHERE fecha_hora_entrada > ( 
SELECT CURDATE( ) )
)
Aquí estás usando una subconsulta y, normalmente, un join es más eficiente que una suconsulta, de manera que yo seguiría la sugerencia de AzidRain.

// Saludos
Responder Con Cita
  #7  
Antiguo 08-11-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.044
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Además, todo esto no es MySql en concreto, sino SQL en general.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Diferencia de fechas CFPA86 Varios 6 14-02-2008 18:58:47
...diferencia geográfica... Jure Humor 2 19-10-2007 22:15:33
Diferencia de fechas noshy Varios 3 31-05-2006 18:19:24
Diferencia De Horas cancerbero SQL 3 16-05-2004 00:55:30
.net y .com cual es la diferencia? danytorres Internet 3 26-02-2004 13:17:41


La franja horaria es GMT +2. Ahora son las 07:17:08.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi