Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

select distinct

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Bases de Datos
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: select distinct Responder citando

hola amigos
necesito, que de un campo específico de una tabla paradox, seleccionar todos los valores posibles, tal cual como lo hace la consulta

Código:
select distinct asignatura from general


lo malo es que necesito que salgan en el orden en que aparecen en la tabla. me explico... un ejemplo de la columna sería:

Código:

ID Asignatura
 1  historia
 2  historia
 3  historia
 4  historia
 5  matematicas
 6  matematicas
 7  matematicas
 8  castellano
 9  castellano
10 castellano
11 castellano
12 castellano

siempre estan ordenadas de esa manera.
y la consulta me devuelve
Código:
 
castellano
historia
matemáticas
(ordenadas alfabeticamente)
y yo necesito que me devuelva
Código:

historia
matematicas
castellano

como lo hago, dentro de una consulta?
gracias
_________________
Existen dos palabras
que te abrirán muchas
puertas en la vida...
"TIRE" y "EMPUJE"
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Agrega un campo "orden_visual" y anexa un ORDER BY orden_visual en la consulta
_________________
Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc

http://www.touchsoftwares.com
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

Código:

select distinct asignatura from general order by ID

_________________
Dirección Municipal de Informática
H. Ayuntamiento de Tijuana
Arriba Lopez Obrador !!!
Los Mexicanos Merecemos Respeto !!!
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mensaje    Asunto: Responder citando

gracias lord nemesis pero la verdad es que eso ya lo intente, y me reclama porque el campo ID no esta en la consulta (select distinct asignatura, nada más). Confused
_________________
Existen dos palabras
que te abrirán muchas
puertas en la vida...
"TIRE" y "EMPUJE"
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Como bien dice LordNemesis, a mí me funciona correctamente esa consulta, he creado la siguiente tabla:

Código:
CREATE TABLE PRUEBA (
   ID INTEGER NOT NULL,
   ASIGNATURA VARCHAR(30)
);
ALTER TABLE PRUEBA ADD CONSTRAINT PRUEBA_PK PRIMARY KEY (ID);

INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (1,  'historia');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (2,  'historia');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (3,  'historia');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (4,  'historia');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (5,  'matematicas');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (6,  'matematicas');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (7,  'matematicas');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (8,  'castellano');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (9,  'castellano');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (10, 'castellano');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (11, 'castellano');
INSERT INTO PRUEBA (ID, ASIGNATURA) VALUES (12, 'castellano');


La consulta que dijo LordNemesis es correcta y funciona bien bajo Firebird 1.5:

Código:
SELECT DISTINCT asignatura
FROM prueba ORDER BY id


Aprovechando lo que tienes si no te funciona la consulta anterior, podrías aprovechar la siguiente consulta:

Código:
SELECT asignatura, MIN(id)
FROM prueba
GROUP BY asignatura
ORDER BY 2


Lo que hacemos es AGRUPAR por asignatura y usar la función agregada MIN para obtener el mínimo ID de cada agrupmamiento:

    historia, 1
    matematicas, 5
    castellano, 8


Ahora ya en tu programa simplemente lee el campo que te haga falta...

Es raro que no te funcione la consulta de LordNemesis, pues debería funcionarte.

Ciao.
_________________
OJO!! Ya tenemos subforo de Bases de Datos!!
Gracias a los admins.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Visitar sitio web del autor MSN Messenger
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.