Gigabyte

Membros
  • Content Count

    138
  • Joined

  • Last visited

Community Reputation

0 Neutro

2 Followers

About Gigabyte

  • Rank
    Master Pogger
  • Birthday 02/26/1978

Contatos

Perfil

  • Gender
    Male
  • Location
    Guarulhos
  • Interests
    Viciado em trabalho....

Recent Profile Visitors

2064 profile views
  1. Olá janius. Insisto na utilização do regexp_replace, que utilizando a tabela criada pelo Kakao, retorna no formato desejado: drop table if exists teste; create table teste ( id integer, nome text ); insert into teste (id, nome) values (1, 'Julio Cezar Andrade'), (2, 'Fenando Henrique Cardoso'), (3, 'Antonio Carlos Magalhães'), (4, 'Pedro Álvares Cabral'), (5, 'Eduardo Henrique Cunha de Farias'); SELECT nome, regexp_replace(nome, '(.*) (.*)', '\2, \1') AS nome_formatado FROM teste; "Julio Cezar Andrade";"Andrade, Julio Cezar" "Fenando Henrique Cardoso";"Cardoso, Fenando Henrique" "Antonio Carlos Magalhães";"Magalhães, Antonio Carlos" "Pedro Álvares Cabral";"Cabral, Pedro Álvares" "Eduardo Henrique Cunha de Farias";"Farias, Eduardo Henrique Cunha de" ...
  2. Legal, vi que você está no caminho certo, porém apenas a 16 da lista acima está correta. No item 14, existe uma forma mais usual para realizar a consulta, então pela primeira vez, vou te dar a resposta... mas só porque você se esforçou! :P SELECT m.nome AS marca FROM sin4.marca AS m INNER JOIN sin4.produto AS p ON (m.id_marca = p.id_marca) INNER JOIN sin4.item AS i ON (p.id_prod = i.id_prod) INNER JOIN sin4.nota AS n ON (i.id_nota = n.id_nota) WHERE (n.dt_nota BETWEEN '2013-11-01 00:00:00' AND '2013-11-30 23:59:59') Minha sugestão pra você é dar uma olhada em como funciona os "JOINS". E é claro, faltou um dos itens principais na consulta... o filtro pelo mês de novembro, que na query acima, coloquei no "WHERE" utilizando o campo dt_nota. No item 15 você comete um erro comum para quem está iniciando e mandou um "SUM" em um campo de texto. SELECT t.descricao, COUNT(p.id_pagamento) AS quantidade FROM sin4.tipo_pagamento AS t INNER JOIN sin4.pagamento AS p ON (p.id_tipo = t.id_tipo) GROUP BY t.descricao ORDER BY quantidade DESC Neste caso, é necessário trazer o campo com a descrição e fazer uma contagem de quantas vezes o tipo de pagamento é utilizado na tabela de pagamentos. Com essa estrutura, já dá pra fazer uma revisão nos outros itens também. Boa sorte!
  3. Olá Barboza Junior, Quanto à segunda questão, você pode monitorar pela sys_view pg_stat_activity SELECT * FROM pg_stat_activity;
  4. Olá Mulequim. Aparentemente o módulo do PG não está carregando no PHP. Você já tentou refazer o processo de instalação do servidor? Posta mais detalhes sobre a máquina que está rodando os servers, como OS, versão PHP, Web server, etc...
  5. Olá Lucas, Para podermos entender o que está acontecendo, seria importante avaliarmos a modelagem do banco. O que me parece é que seu banco antigo está utilizando algum tipo de dado que não é mais suportado na versão mais nova. Tente iniciar analisando se há algum tipo de campo nessas tabelas que ficam em branco, que não existam nas tabelas que migram com sucesso. Qualquer dificuldade, posta o modelo da base de dados.
  6. Olá Janius, Dá pra fazer com um comando só: SELECT regexp_replace(nome, '(.*) (.*)', '\2, \1') FROM <tabela>
  7. Vou tentar ajudar sem te dar a resposta... rs Na hora de montar uma query, o pensamento deve ser lógico e simples. No exemplo do exercício 14, para montar essa consultar, basta seguir os passos do próprio enunciado: SELECT <aqui vai o campo com nome das marcas> FROM <aqui vao as tabelas envolvidas e seus relacionamentos> WHERE <aqui vai a condição> No caso acima, você precisa identificar em qual tabela está o campo com nome das marcas (sln4.marca) e em qual está o campo da data da venda que será utilizada no condicional (sl4.nota). Daí, você consegue saber quais as tabelas estarão envolvidas para o cruzamento das informações (sl4.nota > sl4.item > sl4.produto > sl4.marca). No item 15, vale dar uma olhada nas seguintes palavras chave: SUM, GROUP BY e ORDER BY. O 16 é bem intuitivo e envolve uma única tabela, com atenção especial à parte do condicional. Você pode usar qualquer condicional de comparação para retornar resultados: < > = != O 18 também é só seguir o exemplo do 14, que você conseguirá chegar no resultado. Isto espera ter sido útil...
  8. Olá Gustavo, as questões acima são realmente básicas e se você realmente deseja ingressar no mundo dos sistemas, sugiro que não pule estas aulas e aprenda de verdade. Caso você tenha uma boa relação com a língua inglesa, comece por este tutorial: http://www.w3schools.com/sql/default.asp. Acredito que em 4h dedicadas, você consiga fazê-lo na íntegra. Senão, recomendo estas vídeo aulas: http://dev.rbtech.info/curso-de-sql-para-iniciantes-aula-1/ (eu particularmente não tenho saco pra vídeo aulas). Se você for oldstyle e preferir o papel na mão: http://sistemas.riopomba.ifsudestemg.edu.br/dcc/materiais/833034638_apostila-sql.PDF. Tem um pouco mais de teoria antes de entrar na parte prática, mas é excelente. As três opções são voltadas para o SQL genérico, que se aplica como via de regra a todos os bancos de dados populares. Caso queira um pouco mais de informações, pode revirar a biblioteca pública daqui do Scriptbrasil na divisão sobre banco de dados: https://www.scriptbrasil.com.br/apostilas/bd/ É importante lembrar que os fóruns estão aí para te ajudar a aprender e não para fazermos por você! Abraços e qualquer dúvida que pintar durante o processo de aprendizagem, posta aí! ;)
  9. Empresa top de mercado em seu nicho contrata profissionais com o seguinte perfil: Programador PHP com conhecimento exigido em HTML, CSS e MySQL. Desejável conhecimento em MVC, Linux (usuário), SVN e SOAP. Candidatos que conhecerem Magento e/ou possuirem experiência com e-commerce serão analisados com diferencial. Não haverá exigência de comprovação de experiência, porém o processo seletivo contempla prova para análise de conhecimento. CLT com benefícios e prêmio por produtividade. Horários disponíveis: 08:00 às 17:00h 09:00 às 18:00h
  10. fala rodrigo! normalmente quando eu preciso de dados da tabela, eu utilizo o information_schema, porque ele é padrão ANSI e teoricamente deveria ser igual em todos os sgbd's SELECT * FROM information_schema.colums WHERE table_schema = 'nome do schema' AND table_name = 'nome da tabela' AND column_name = 'nome do campo' []'s
  11. Opa.... beleza frodo?? Já tentou usar utf8 ao invés do latin1? ele costuma funcionar melhor na importação dos caracteres especiais. []'s
  12. Olá Cristiano Cruz Seguinte: Isso acontece porque foi feito algum tipo de insert definindo o valor do id. Isso não incrementa o serial (que infelizmente não é inteligente). Nesse caso, siga este procedimento: select (max(id)+1) from captcha; alter sequence captcha_id_seq restart [aqui vai o resultado da query anterior]; E muito cuidado em desabilitar um pkey, pois você terá ids repetidas.. !!
  13. Gigabyte

    Duvida no SQL!

    Fala rfbba!!! Particularmente prefiro usar join SELECT nomefilme FROM filme INNER JOIN personagem USING(codfilme) INNER JOIN ator USING(codator) WHERE nomeartistico = 'Jim Carrey'; !!
  14. Pra fazer em modo txt: pg_dump -h [host] -p [porta] -U [usuario] -F p -D -v -d -b -f [arquivo de saida] -n "[nome do schema]" -t "[nome das tables]" [nome do database] !!
  15. Olá Jean, sei que o POST tá um pouco antigo, mas fica pelo menos pra posteridade... rs Isso é uma questão organizacional. Não existe o certo ou errado e sim a forma normalizada ou não. Muitos puristas me jogariam na fogueira pelo que vou dizer, mas normalizar ou não depende da extensão da sua aplicação... mas quanto à sua pergunta eu certamente manteria o pedido em duas tabelas: Emprestimo(id_emprestimo, cliente, data_locacao, data_fechamento, valor_pago) Itens(id_item, id_emprestimo(FK), midia(?), data_prev_devolucao, data_devolucao)