SQL - SQL Server, consultas n a n

 
Vista:

SQL Server, consultas n a n

Publicado por jacqueline (3 intervenciones) el 13/11/2017 14:26:03
Hola, ojala puedan ayudarme.
tengo una relacacion n a n con una tabla intermedia.

tabla 1: Cie
tabla 2: saben

tabla intermedia : idCie , idSaben.

mi problema es el siguiente:


El usuario va a ingresar un parametro que va a ser el valor de IdCie, y yo necesito mostrar en un celda, todos los valores de idSaben relacionados con IdCie.

Espero que se entienda lo que quise explicar.

Muchas gracias
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
sin imagen de perfil
Val: 806
Bronce
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

SQL Server, consultas n a n

Publicado por leonardo_josue (1173 intervenciones) el 13/11/2017 16:10:23
Hola Jacqueline:

Tienes muchas formas de hacer lo que quieres, algunas más simples que otras... en MySQL por ejemplo existe la función GROUP_CONCAT que te sirve para poner en una celda, separados por comas, todos los elementos agrupados por alguna característica. Checa est ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
mysql> SELECT * FROM tabla;
+------+-------------+
| id   | descripcion |
+------+-------------+
|    1 | uno         |
|    1 | one         |
|    1 | un          |
|    2 | dos         |
|    2 | two         |
|    2 | deux        |
|    3 | tres        |
|    3 | three       |
|    3 | trois       |
+------+-------------+
9 rows in set (0.00 sec)
 
mysql> SELECT
    ->   id,
    ->   GROUP_CONCAT(descripcion) numeros
    -> FROM
    ->   tabla
    -> GROUP BY
    ->   id;
+------+------------------+
| id   | numeros          |
+------+------------------+
|    1 | uno,one,un       |
|    2 | dos,two,deux     |
|    3 | tres,three,trois |
+------+------------------+
3 rows in set (0.00 sec)

Si esto es lo que necesitas, entonces puedes preguntarle a SAN GOOGLE ¿cómo simular un GROUP_CONCAT con SQL Server? Estoy seguro de que encontrarás más de una forma para hacerlo.

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

SQL Server, consultas n a n

Publicado por jacqueline (3 intervenciones) el 13/11/2017 16:13:35
Muchas gracias, perdon no aclare que estaba usando SQL server 2016.. voy a buscar lo que me recomendas
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
Imágen de perfil de Isaias
Val: 2.542
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

SQL Server, consultas n a n

Publicado por Isaias (1921 intervenciones) el 13/11/2017 17:46:20
Amigo, la consulta es muy BASICA, ¿Que tanta experiencia tienes en SQL Server (T-SQL)?, aclaro, no se dice "espero que se entienda", es mucho mejor, "espero haberme explicado"
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

SQL Server, consultas n a n

Publicado por jacqueline (3 intervenciones) el 13/11/2017 17:51:31
Disculpame por la mala forma de expresarme.

Como usted dijo, al ser la pregunta tan basica, se debe haber dado cuenta que no tengo la experiencia necesaria.
muchas gracias igual por su ayuda.
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
Imágen de perfil de Isaias
Val: 2.542
Oro
Ha mantenido su posición en SQL (en relación al último mes)
Gráfica de SQL

SQL Server, consultas n a n

Publicado por Isaias (1921 intervenciones) el 13/11/2017 23:37:18
Espero que esto sea el inicio de tu respuesta

1
2
3
4
5
SELECT s.* -- O los datos que quieras de saben
FROM cie c
inner join tablaIntermedia ti on c.idCie = ti.idCie
inner join saben s on ti.idsaben = s.idsaben
WHERE idCie = @idCie -- la variable que seleccionara el usuario
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