Preferencialmente Abra o link no Google Chrome
sexta-feira, 28 de junho de 2013
A Vodka - Buche de Belvedere Vodka
Em homenagem aos famosos prata bétulas emblemáticos da marca, Belvedere foi escolhido para "calafetar" em um deles e se transformar em balde de gelo para uma degustação perfeita.
Sob a casca de metal cromado esconde um coração de concurso vidoeiro, casa de uma garrafa de Belvedere Pure 70 cl.
Apresentado em uma base de acrílico transparente e elegante, a parte central do tronco nos bastidores e mostra a garrafa na seção oca.
Esta garrafa removido deixa espaço para um recipiente de gelo. O log é delgado, levando a folha de azevinho inseparável, enquanto a versão metálica.
Buche de Belvedere Vodka é limitada a apenas 25 peças, disponível exclusivamente na Colette por 250 €.
Tradução: Google Translate
Preço: Conversão 250 Euros para Real
quinta-feira, 27 de junho de 2013
Split no Oracle
SELECT SUBSTR(t.column_one, 1, INSTR(t.column_one, ' ')-1) AS col_one,
SUBSTR(t.column_one, INSTR(t.column_one, ' ')+<<num char do separador>>) AS col_two
FROM YOUR_TABLE t
Fonte: http://stackoverflow.com/questions/5199849/split-varchar-into-separate-columns-in-oracle
quarta-feira, 26 de junho de 2013
terça-feira, 25 de junho de 2013
terça-feira, 18 de junho de 2013
HQL com clausula ON nos JOIN
SELECT {msg.*}, {cmd.*}
FROM Schema.Messages AS msg
LEFT OUTER JOIN schema.send_commands AS cmd
ON cmd.message_key = msg.unique_key
AND ( lower(cmd.status) IN (lower('failed') ) )
WHERE msg.sequence_received < 10";
SELECT m, c
FROM Message m LEFT JOIN m.commands c WITH (lower(c.status) = 'failed')
WHERE m.sequenceReceived < 10
Fonte:
http://stackoverflow.com/questions/6345052/hibernate-hql-joins-on-many-clauses
quinta-feira, 13 de junho de 2013
Querys recursivas no banco de dados oracle
Querys Recursivas no Oracle
Segue um exemplo prático de como fazer querys recursivas no Oracle, usando genealogia.
artefato/Programa..: querys_recursivas_no_oracle
-- Empresa.................:
-- Data Inicio ............: 07/04/2011
-- Data Atual..............: 22/07/2011
-- Versao..................: 0.01
-- Compilador/Interpretador: Oracle
-- Sistemas Operacionais...: Linux/Windows/Outros SOs
-- SGBD....................: Oracle 9i/10g/11g
-- Kernel..................: Nao informado!
-- Finalidade..............: uso de querys recursivas no oracle com com start with ... connect by ...
-- ........................:
-- OBS.....................:
--
/* testando
no
oracle com start
with
...
connect
by
*/
--DROP TABLE genealogia;
CREATE
TABLE
genealogia
(
id_genealogia
integer
PRIMARY
KEY
, nome varchar2(25)
NOT
NULL
, id_genealogia_pai
integer
NULL
--FOREIGN KEY fk_genealogia REFERENCES genealogia(id_genealogia)
);
--TRUNCATE TABLE genealogia;
SELECT
*
FROM
genealogia;
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(1,
'ABRAÃO'
,
NULL
);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(2,
'ISAC'
,1);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(3,
'ESAÚ'
,2);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(4,
'JACÓ'
,2);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(5,
'RÚBEN'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(6,
'SIMEÃO'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(7,
'LEVI'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(8,
'JUDÁ'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(9,
'ISSACAR'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(10,
'ZEBULON'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(11,
'JOSÉ'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(12,
'BENJAMIM'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(13,
'DÃ'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(14,
'NAFTALI'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(15,
'GADE'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(16,
'ASER'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(17,
'DINÁ'
,4);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(18,
'PEREZ'
,8);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(19,
'ZERA'
,8);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(20,
'ESRON'
,18);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(21,
'ARÃO '
,20);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(22,
'AMINADABE'
,21);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(23,
'NASSON'
,22);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(24,
'SALMON'
,23);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(25,
'BOAZ'
,24);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(26,
'OBEDE'
,25);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(27,
'JESSÉ'
,26);
INSERT
INTO
genealogia (id_genealogia, nome, id_genealogia_pai)
VALUES
(28,
'DAVI'
,27);
SELECT
*
FROM
genealogia;
--query 1, AUTO RELACIONAMENTO
SELECT
g1.nome
, g1.id_genealogia
, g2.id_genealogia_pai
FROM
genealogia g1
LEFT
JOIN
genealogia g2
ON
g1.id_genealogia = g2.id_genealogia_pai
;
--query 2, CONNECT BY PRIOR
SELECT
nome
, id_genealogia
, id_genealogia_pai
FROM
genealogia
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
;
--query 3, LEVEL
SELECT
nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
FROM
genealogia
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
;
--query 4, START WITH
SELECT
nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
FROM
genealogia
START
WITH
id_genealogia = 4
--JACÓ
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
ORDER
BY
LEVEL
ASC
;
--query 5, COM ARVORE
SELECT
RPAD(LPAD(
' '
, 5*(
LEVEL
-1))||nome,30)
AS
arvore
, nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
FROM
genealogia
START
WITH
id_genealogia = 1
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
ORDER
BY
LEVEL
ASC
;
--query 6, SYS_CONNECT_BY_PATH
SELECT
LPAD(
' '
, 5*(
LEVEL
-1)) || nome
AS
representacao_arvore1
, SYS_CONNECT_BY_PATH(nome,
'/'
)
AS
represencao_arvore2
, nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
FROM
genealogia
START
WITH
id_genealogia = 1
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
ORDER
BY
LEVEL
ASC
;
--query 7, ORDER SIBLINGS BY
SELECT
LPAD(
' '
, 5*(
LEVEL
-1)) || nome
AS
representacao_arvore1
, SYS_CONNECT_BY_PATH(nome,
'/'
)
AS
represencao_arvore2
, nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
FROM
genealogia
START
WITH
id_genealogia = 1
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
ORDER
SIBLINGS
BY
nome
ASC
;
--query 8, CONNECT_BY_ROOT
CREATE
OR
REPLACE
VIEW
vw_genealogia
AS
SELECT
LPAD(
'>'
, 5*(
LEVEL
-1)) || nome
AS
representacao_arvore1
, SYS_CONNECT_BY_PATH(nome, '\')
AS
represencao_arvore2
, CONNECT_BY_ROOT nome
AS
raiz
, nome
, id_genealogia
, id_genealogia_pai
,
LEVEL
AS
nivel
FROM
genealogia
START
WITH
id_genealogia = 1
--CONNECT BY NOCYCLE PRIOR id_genealogia = id_genealogia_pai
CONNECT
BY
PRIOR
id_genealogia = id_genealogia_pai
--ORDER SIBLINGS BY level ASC
ORDER
BY
level
ASC
;
SELECT
*
FROM
vw_genealogia;
Assinar:
Postagens (Atom)