2008-06-16

Missing values from a sequence generated column

If we have a column that is a sequence generated value column from a table we can get holes in the values (due to several issues that are common known).
Here is a code that shows that holes using as example a table named my_table and a column id
SELECT id,
       next_id,
       DECODE (next_id, id + 1, '',
                        DECODE (id + 1, next_id - 1, TO_CHAR (id + 1),
                                        TO_CHAR (id + 1)
                                        || '-'
                                        || TO_CHAR (next_id - 1)))
       missing_values
FROM   (SELECT id,
               LEAD (id, 1) over (ORDER BY id) AS next_id
        FROM   my_table)
WHERE  next_id IS NOT NULL
   AND DECODE (next_id, id + 1, '',
                        DECODE (id + 1, next_id - 1, TO_CHAR (id + 1),
                                        TO_CHAR (id + 1)
                                        || '-'
                                        || TO_CHAR (next_id - 1))) IS NOT NULL



An example of the output:

22     42     23-41
42     44     43
44     46     45
46     62     47-61
62     64     63
64     68     65-67

2008-06-12

Verificação do tempo

Mandaram-me um mail com esta fotografia de um sistema "rudimentar" de previsão do tempo. Eu acho que é mais uma verificação do tempo.
Pedra Molhada -> está a chover
Pedra Seca -> não está a chover
Sombra no chão -> está sol
Branco em cima -> está a nevar
Não se pode ver a pedra (nem o cartaz já agora) -> nevoeiro
Pedra a baloiçar -> está vento
Pedra a saltar para cima e para baixo -> terramoto
Pedra desapareceu -> Tornado (ou depois de um tornado)

Actualização: no Parque da Lavandeira em Gaia existe perto da entrada uma versão portuguesa desta pedra

2008-06-06

Thing I really like in 11g: ADD COLUMN

In Oracle 11g if you want to alter add a column to a table and that column:
- allows NULLs and doesn't have DEFAULT value
- doesn't allows NULLS (NOT NULL column) and has DEFAULT value
- its a virtual column

you can do it without fear even if the tables are in use...it doesn't needs to lock then!

2008-05-26

Trabalho, trabalho, trabalho?

Se tens o teu nariz no trabalho enfiado,
durante todo o tempo e não tiveres cuidado,
um dia negarás que se possam encontrar
Regatos murmurantes e aves a cantar.
Então o teu mundo, apenas há-de ter:
Tu próprio, o teu nariz
e o trabalho para fazer.

Uma nova maneira de seguir os consumidores

Nos E.U.A. já 2 shopping têm um sistema que segue o percurso do cliente pelo shopping.
Assim podem saber entre outras coisas: onde os clientes param mais, que um cliente que visita esta loja depois visita também uma outra, etc..
Claro que questões de privacidade se levantam mas asseguram que o único dado pessoal que obtêm pelo IME do telefone é a nacionalidade do telefone.
Desde que não cruzem esses dados com outra base de dados....

Shops track customers via mobile phone

2008-05-23

Tabelas Úteis

Quem como eu necessitar de saber algums MIME types veja esta página.
(Há MIME types como o lixo!)

E que tal a tabela ASCII com também os caracteres em código HTML?

Bom fim de semana e bom trabalho!

2008-05-22

Balada para los poetas

Hoje recebi um email a perguntar por quem cantava o poema "Balada para los poetas" de Rafael Alberti (devido a eu ter esse poema numa página no meu site).
Pois procurei logo na net e encontrei a resposta: AguaViva e ainda encontrei a música e um video no youtube!



poema original e letra no meu site