consulta.......
Hola a todos!!!!!!
tengo una pequeña duda.... Yo tengo una consulta digamos de libros cierto cada libro esta relacionado con materias entonces un libro puede estar relacionadocon varias materias lo que yo quiero es que cuando ya haga una consulta de libros y materias si el libro esta relacionado con varias materias no me salga el numero de veces que esta relacionado con alguna materia sino que me salga el libro una vez y en un campo las materias que esten relacionadas con el libro. Alguien me puede dar una idea de cómo hacer esto? teniendo en cuenta que es una vista que estoy haciendo para abrirla desde excel. muchas gracias por toda la colaboración que puedan brindarme:confused: |
Bueno creo que si colocas DISTINCT en tu consulta puede que se solucione, por ejemplo:
Código:
select distinct campo(s) |
Hola!!!!
Ya lo intente de esta manera pero de igual manera me siguien saliendo varios libros según el núemro de materias que tenga relacionados.... GRacias por tu respuuesta |
Cita:
Si sql server permite el uso de arrays en la definición de una vista, podría ser una solución, aunque no he trabajado ni con sql server ni con arrays así definidas. Saludos |
Por lo que he notado deseas hacer algo como:
______________________________________ |Libro | Materia1 | Materia2 | ... | MateriaN | |_____________________________________| .... .... .... Que te parece si nos cuentas en que motor tienes la BD, y en que versión de Delphi estas desarrollando |
Puede que este equivocado pero lo qe buscas puedes encontrar informacion buscando por pivotear tablas. Pivot tables en Sql Server. dale una busqueda en google que te arrojara unos cuantos resultados puede que sea lo que necesitas.
|
Hola!!!!
mi motor de BD es SQL server 2000 y no tiene que ver con la aplicación porque lo que necesito es hacer la vista para llevarla a excel. muchas gracias |
Creo que la solucion estaria en hacer una subconsulta (en vez de join) para traer el detalle del campo que contiene varios registros, y usar la funcion COALESCE para concatenar el resultset de cada subconsulta en un solo registro, quizas separado por comas.
Busca mas informacion de esta funcion en Google o los books online. |
La franja horaria es GMT +2. Ahora son las 07:40:01. |
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