In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Propuesta a OZS para crear un grupo de noticias sobre SQL

Foro público de Xailer en español
Responder
fredy[1]
Mensajes: 218
Registrado: Mar Mar 08, 2005 2:03 am

Propuesta a OZS para crear un grupo de noticias sobre SQL

Mensaje por fredy[1] »

Hola,
Creo que serí­a buena idea ampliar las news de xailer con un nuevo grupo exclusivo
sobre SQL, ya que cada vez está cobrando más importancia el tema y creo que
se merece un grupo independiente.
De momento suelto aquí­ mi pregunta, a ver si alguno me puede iluminar un
poquico.
Tras los logros de René con Crystal y a la espera de ver qué nos depara Xailer,
estoy retomando este diseñador de informes y me encuentro con una duda que
no sé cómo resolver.
Tengo una tabla "albaranes" más o menos así­
- Nº albarán (caracter,3)
- Fecha (date)
- Mandante (integer,5)
- Cliente (Integer,5)
- Asegurado (Integer,5)
Tanto mandante como cliente y asegurado son códigos que se van a buscar a
la tabla "contactos"
- Codigo (integer,5)
- Nombre (caracter,40)
A la hora de montar el listado, tengo que sacar el nombre del mandante, del
cliente y del asegurado, pero me estoy peleando con los select y lo único
que he logrado es que me dé todos aquellos que mandante, cliente y asegurado
son el mismo código.
Vamos, totalmente perdido.
En xbase esta chupado, incluso en Xailer con los campos calculados, pero
con crystal no sé cómo hacerlo.
Bueno, siempre me queda la opción de crear una fórmula dentro del informe
y sacarlo así­, pero me gustarí­a saber si se puede hacer directamente en una
consulta SQL, ya que la verdad es que me interesa más aprender SQL que el
informe en sí­.
Un saludico,
Fredy
Claudio Morinico
Mensajes: 9
Registrado: Mar Oct 12, 2004 2:25 pm

Propuesta a OZS para crear un grupo de noticias sobre SQL

Mensaje por Claudio Morinico »

Fredy, un ejemplo de como seria con un rango de fechas y horas:
SELECT a.numeroalbaran, a.fecha, b.nombre, c.nombre, d.nombre FROM
((albaranes AS a LEFT JOIN contactos AS b ON a.mandante = b.codigo)
LEFT JOIN contactos AS c ON a.cliente = c.codigo)
LEFT JOIN contactos AS d ON a.asegurado = d.codigo
WHERE a.fecha >= #aaaa-mm-dd hh:nn# AND b.fecha <= #aaaa-mm-dd hh:nn#
ORDER BY a.fecha
Fijate que el ultimo "left join" no lleva parentesis. Esto me funciona
conectado a una base de datos Access a traves de ODBC o directo.
Saludos y mucha suerte,
--
Claudio Morinico,
Montevideo - Uruguay.
El dia Thu, 29 Jun 2006 12:10:47 +0000 (UTC), Fredy (fredy@airtel.net)
dijo...
> Hola,
>
> Creo que serí­a buena idea ampliar las news de xailer con un nuevo grupo exclusivo
> sobre SQL, ya que cada vez está cobrando más importancia el tema y creo que
> se merece un grupo independiente.
>
> De momento suelto aquí­ mi pregunta, a ver si alguno me puede iluminar un
> poquico.
>
> Tras los logros de René con Crystal y a la espera de ver qué nos depara Xailer,
> estoy retomando este diseñador de informes y me encuentro con una duda que
> no sé cómo resolver.
>
> Tengo una tabla "albaranes" más o menos así­
>
>
> - Nº albarán (caracter,3)
> - Fecha (date)
> - Mandante (integer,5)
> - Cliente (Integer,5)
> - Asegurado (Integer,5)
>
> Tanto mandante como cliente y asegurado son códigos que se van a buscar a
> la tabla "contactos"
>
> - Codigo (integer,5)
> - Nombre (caracter,40)
>
>
> A la hora de montar el listado, tengo que sacar el nombre del mandante, del
> cliente y del asegurado, pero me estoy peleando con los select y lo único
> que he logrado es que me dé todos aquellos que mandante, cliente y asegurado
> son el mismo código.
>
> Vamos, totalmente perdido.
>
> En xbase esta chupado, incluso en Xailer con los campos calculados, pero
> con crystal no sé cómo hacerlo.
> Bueno, siempre me queda la opción de crear una fórmula dentro del informe
> y sacarlo así­, pero me gustarí­a saber si se puede hacer directamente en una
> consulta SQL, ya que la verdad es que me interesa más aprender SQL que el
> informe en sí­.
>
> Un saludico,
> Fredy
>
>
>
Jaime Irurzun
Mensajes: 67
Registrado: Mar Nov 02, 2004 6:23 pm

Propuesta a OZS para crear un grupo de noticias sobre SQL

Mensaje por Jaime Irurzun »

Hola Fredy,
Puede que haya más formas, pero yo he aprendido a relacionar las tablas
mediante condiciones de emparejamiento que van en el WHERE. En tu ejemplo:
SELECT mandante, c.nombre, a.nombre
FROM Albaranes, Clientes c, Asegurados a
WHERE cliente = c.codigo AND asegurado = a.codigo;
Lo de la "c" y la "a" son etiquetas, que sirven para diferenciar campos
de distintas tablas que tengan el mismo nombre (a albaranes no le he
puesto etiqueta, en este caso).
Espero que te sirva :)
Un saludo,
Jaime Irurzun.
_________________________________
Blog sobre informática
www.codigoescrito.com
Sofware doméstico fácil de usar
www.alanit.com
_________________________________
Fredy escribió:
> Hola,
>
> Creo que serí­a buena idea ampliar las news de xailer con un nuevo grupo
> exclusivo sobre SQL, ya que cada vez está cobrando más importancia el
> tema y creo que se merece un grupo independiente.
>
> De momento suelto aquí­ mi pregunta, a ver si alguno me puede iluminar un
> poquico.
>
> Tras los logros de René con Crystal y a la espera de ver qué nos depara
> Xailer, estoy retomando este diseñador de informes y me encuentro con
> una duda que no sé cómo resolver.
>
> Tengo una tabla "albaranes" más o menos así­
>
>
> - Nº albarán (caracter,3)
> - Fecha (date)
> - Mandante (integer,5)
> - Cliente (Integer,5)
> - Asegurado (Integer,5)
>
> Tanto mandante como cliente y asegurado son códigos que se van a buscar
> a la tabla "contactos"
>
> - Codigo (integer,5)
> - Nombre (caracter,40)
>
>
> A la hora de montar el listado, tengo que sacar el nombre del mandante,
> del cliente y del asegurado, pero me estoy peleando con los select y lo
> único que he logrado es que me dé todos aquellos que mandante, cliente y
> asegurado son el mismo código.
>
> Vamos, totalmente perdido.
>
> En xbase esta chupado, incluso en Xailer con los campos calculados, pero
> con crystal no sé cómo hacerlo.
> Bueno, siempre me queda la opción de crear una fórmula dentro del
> informe y sacarlo así­, pero me gustarí­a saber si se puede hacer
> directamente en una consulta SQL, ya que la verdad es que me interesa
> más aprender SQL que el informe en sí­.
>
> Un saludico,
> Fredy
>
>
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Propuesta a OZS para crear un grupo de noticias sobre SQL

Mensaje por ignacio »

Fredy,
Ya lo tienes: local.ozs.xbase.sql
Te agradecería que tu mismo pusieses el primer mensaje de bienvenida.
Un saludo,
"Fredy" <fredy@airtel.net> escribió en el mensaje
news:[email=a20b86f2a1c58c8699cf43c2d16@news.xailer.com...]a20b86f2a1c58c8699cf43c2d16@news.xailer.com...[/email]
> Hola,
>
> Creo que sería buena idea ampliar las news de xailer con un nuevo grupo
> exclusivo sobre SQL, ya que cada vez está cobrando más importancia el tema
> y creo que se merece un grupo independiente.
>
> De momento suelto aquí mi pregunta, a ver si alguno me puede iluminar un
> poquico.
>
> Tras los logros de René con Crystal y a la espera de ver qué nos depara
> Xailer, estoy retomando este diseñador de informes y me encuentro con una
> duda que no sé cómo resolver.
>
> Tengo una tabla "albaranes" más o menos así
>
>
> - Nº albarán (caracter,3)
> - Fecha (date)
> - Mandante (integer,5)
> - Cliente (Integer,5)
> - Asegurado (Integer,5)
>
> Tanto mandante como cliente y asegurado son códigos que se van a buscar a
> la tabla "contactos"
>
> - Codigo (integer,5)
> - Nombre (caracter,40)
>
>
> A la hora de montar el listado, tengo que sacar el nombre del mandante,
> del cliente y del asegurado, pero me estoy peleando con los select y lo
> único que he logrado es que me dé todos aquellos que mandante, cliente y
> asegurado son el mismo código.
>
> Vamos, totalmente perdido.
>
> En xbase esta chupado, incluso en Xailer con los campos calculados, pero
> con crystal no sé cómo hacerlo.
> Bueno, siempre me queda la opción de crear una fórmula dentro del informe
> y sacarlo así, pero me gustaría saber si se puede hacer directamente en
> una consulta SQL, ya que la verdad es que me interesa más aprender SQL que
> el informe en sí.
>
> Un saludico,
> Fredy
>
>
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder