Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Noticias (https://www.clubdelphi.com/foros/forumdisplay.php?f=34)
-   -   Firebird 3.0 Alpha 1 (https://www.clubdelphi.com/foros/showthread.php?t=83826)

maeyanes 02-08-2013 20:25:34

Firebird 3.0 Alpha 1
 
Hola...

Pues parece que nadie se ha dado cuenta. Hoy se publicó la primera alpha pública de Firebird 3.0 para pruebas.


Fuente: http://www.firebirdsql.org/en/news/f...testing-32697/


Saludos...

Casimiro Notevi 02-08-2013 20:42:14

^\||/
.

poliburro 02-08-2013 22:56:27

Excelente, ¿qué novedades incluirá esta versión?

Casimiro Notevi 03-08-2013 00:02:31

Así por encima, he visto encriptación de la BD y conexión segura SSL/TLS

cloayza 05-08-2013 16:00:33

Gracias por la información...Veremos que hay de nuevo...^\||/

ecfisa 05-08-2013 17:48:14

Hola.

No voy a poder probarlo hasta dentro de un tiempo, pero aquí encontré una lista de algunas de las mejoras: Algunos comentarios sobre Firebird 3.0 Alpha 1

Saludos. :)

RONPABLO 05-08-2013 18:03:19

Además en el SQL se podrá hacer cosas como estas:

Código SQL [-]
MERGE INTO customers c
  USING
    (SELECT * FROM customers_delta WHERE id > 10) cd
     ON (c.id = cd.id)
  WHEN MATCHED THEN
    UPDATE SET name = cd.name
  WHEN NOT MATCHED THEN
    INSERT (id, name)
    VALUES (cd.id, cd.name)


O para remplazar consultas como la siguiente:


Código SQL [-]

select
    id,
    department,
    salary,
    salary / (select sum(salary) from employee) percentage
  from employee
  order by id;

Se podrá usar algo que corre más rápido y se escribe en menos lineas como esto:
Código SQL [-]
select
    id,
    department,
    salary,
    salary / sum(salary) OVER () percentage
  from employee
  order by id;


En las dos obtendrá este mismo resultado:
Cita:


id department salary percentage
-- ---------- ------ ----------
1 R & D 10.00 0.2040
2 SALES 12.00 0.2448
3 SALES 8.00 0.1632
4 R & D 9.00 0.1836
5 R & D 10.00 0.2040


poliburro 05-08-2013 22:50:27

Cita:

Empezado por RONPABLO (Mensaje 465053)


select
id,
department,
salary,
salary / (select sum(salary) from employee) percentage
from employee
order by id;

Esa mejora me parece fenomenal, pues esa consulta en particular es tremendamente costosa y no debería usarse.

RONPABLO 05-08-2013 23:46:58

Sí, al rededor de so se puede hacer muchas más cosas, como tal hace parte de una implementación de funciones analíticas (Window Functions), por ejemplo se puede tener mas comandos internos para obtener resultados, ejemplos:

PARTITION: Acá se determina un punto de agrupación y así el procentaje que obtenemos ya no es del total de toda la consulta, si no de lo que coincida con el valor del campo que indicamos en el comando PARTITION
Código SQL [-]
select
    id,
    department,
    salary,
    salary / sum(salary) OVER (PARTITION BY department) percentage
  from employee
  order by id

Osea tendríamos el siguiente resultado:

Código SQL [-]
  id  department  salary  percentage
  --  ----------  ------  ----------
  1   R & D        10.00      0.3448
  2   SALES        12.00      0.6000
  3   SALES         8.00      0.4000
  4   R & D         9.00      0.3103
  5   R & D        10.00      0.3448

Podemos ordenar por un campo:

Código SQL [-]
select
    id,
    salary,
    sum(salary) over (order by salary) cumul_salary
  from employee
  order by salary
en fin ahí poco a poco voy leyendo el release note y voy viendo como hacer nuevas cosas y luce muy bien para mi gusto (No sobra decir que los ejemplos acá puestos los he traído de allá)

poliburro 07-08-2013 17:43:23

Cita:

Empezado por RONPABLO (Mensaje 465074)
en fin ahí poco a poco voy leyendo el release note y voy viendo como hacer nuevas cosas y luce muy bien para mi gusto (No sobra decir que los ejemplos acá puestos los he traído de allá)

Ya que usas FireBird mi amigo, valdría la pena que hicieras una comparación de planes de ejecución usando ambas sentencias. Sería muy ilustrativo ver las diferencias de costes.


La franja horaria es GMT +2. Ahora son las 14:00:36.

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