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 31-08-2008
Avatar de Adrian Murua
Adrian Murua Adrian Murua is offline
Miembro
 
Registrado: oct 2003
Ubicación: Tucuman - Argentina
Posts: 45
Poder: 0
Adrian Murua Va por buen camino
Talking Consulta que comience en una letra y termine en otra

Estimados Amigos :

Tengo una tabla que contiene el nombre y la direccion de un grupo de personas y deseo hacer una consulta que me devuelva todos los nombres conprendidos entre las letras 'A' y 'C', y no se como realizarla . Habia pensado en el operador LIKE pero solo hasta donde conozco puedo seleccionar los apellidos que comiencen con A [ 'A%' ] o con C [ 'C%' ] .

Espero que puedan ayudarme .

Muchas Gracias.
__________________
Adrián Murúa.
Responder Con Cita
  #2  
Antiguo 31-08-2008
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Adrian,

En la misma palabra, así,

Código SQL [-]
WHERE campo LIKE 'A%%C'

O de entre la "lista alfabética", así,

Código SQL [-]
WHERE campo LIKE 'A%%' 
OR campo LIKE 'B%%'
OR campo LIKE 'A%%'

??
__________________
"constructive mind, destructive thoughts"
Responder Con Cita
  #3  
Antiguo 31-08-2008
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
No sé, ¿has intentado algo como esto?

Código SQL [-]
select * from tabla
where nombre >= 'A' and nombre < 'D'

// Saludos
Responder Con Cita
  #4  
Antiguo 31-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No sabia que se podia con mayor o menor que con string.
Una cosa Roman; Asi vera los registros que empiezan con esas letras?, tu crees?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 31-08-2008
Avatar de Adrian Murua
Adrian Murua Adrian Murua is offline
Miembro
 
Registrado: oct 2003
Ubicación: Tucuman - Argentina
Posts: 45
Poder: 0
Adrian Murua Va por buen camino
Gracias por sus respuestas :

He probado
Código SQL [-]
 SELECT *  FROM `afiliados` WHERE (APELLIDO LIKE 'A%') OR (APELLIDO LIKE 'B%') OR (APELLIDO LIKE 'C%') ORDER BY APELLIDO
y me funciona de maravillas ya que era entre la lista alfabetica como me decia TOPX,

de la forma :
Código SQL [-]
 SELECT * FROM `afiliados` WHERE (APELLIDO > 'A') AND (APELLIDO < 'D') ORDER BY APELLIDO

como dice roman tambien funciona

Muchas Gracias por su respuestas.
__________________
Adrián Murúa.

Última edición por Adrian Murua fecha: 31-08-2008 a las 20:30:40. Razón: Modificar Sentencias
Responder Con Cita
  #6  
Antiguo 31-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Ya me extrañaba a mi que a Roman se le escapara algo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 31-08-2008
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 Caral Ver Mensaje
Hola
No sabia que se podia con mayor o menor que con string.
De hecho, según acabo de ver, también se puede así:

Código SQL [-]
select * from tabla
where nombre between 'A' and 'D'
order by nombre

// Saludos
Responder Con Cita
  #8  
Antiguo 31-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Es bueno saber que en sql como en delphi se pueden hacer las cosas de muchas maneras, pero me pregunto?, cual sera mejor?, o sera un asunto antojadizo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #9  
Antiguo 31-08-2008
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
Pues no creo que haya mayor diferencia, excepto que si el rango es amplio, digamos de C a R, es más cómodo escribir el < y > o el between que usar un OR por cada letra. Pero, como dices, es cuestión de antojo

// Saludos
Responder Con Cita
  #10  
Antiguo 31-08-2008
Avatar de TOPX
TOPX TOPX is offline
Miembro
 
Registrado: may 2008
Ubicación: Bogotá
Posts: 527
Poder: 17
TOPX Va camino a la fama
Cita:
Empezado por roman Ver Mensaje
[sic] es más cómodo escribir el < y > o el between que usar un OR por cada letra.
Sí señor, tiene toda la razón.
__________________
"constructive mind, destructive thoughts"
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
Leer archivo txt letra por letra intercubo Varios 14 16-02-2008 21:22:28
Realizar una consulta sobre los registros que devuelve otra consulta Borjaserrano Firebird e Interbase 12 01-10-2007 23:19:44
Consulta dentro de otra consulta judit25 Conexión con bases de datos 1 25-06-2007 15:52:15
Como puedo hacer una consulta por cual quier letra esimon SQL 5 04-07-2006 00:47:06
Pulsar una letra en un DBgrid y que vaya al campo que empiece por esa letra Nbull SQL 8 16-12-2004 17:58:01


La franja horaria es GMT +2. Ahora son las 21:12:27.


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