Ir para conteúdo
Fórum Script Brasil

kiko fernandes

Membros
  • Total de itens

    13
  • Registro em

  • Última visita

Sobre kiko fernandes

kiko fernandes's Achievements

0

Reputação

  1. Oi Rafael, se for o diretório de Schemas ele fica em: c:\ProgramData\MySQL\MySQL Server 5.1\data A pasta ProgramData é oculta. Té+
  2. Oi GustavoBorba Não sei se entendi direito, mas tente desta forma: Select count( distinct disciplina) FROM questoes Té+
  3. Oi Alexandremanowar Pode ser que tenha outro método que eu desconheço, mas eu já passei por uma situação igual a sua e resolvi da seguinte forma: 1 - Criei outra tabela com os mesmos campos e nome diferente. Exemplo tabela_b (Principal tabela_a) 2 - Mudei o auto_increment para iniciar no numero desejado. (da tabela_b) 3 - Inseri todos os dados com insert into da tabela_a para a tabela_b (insert com select, porem não copiei o id) 4 - Removi a tabela_a e alterei o nome da tabela_b para tabela_a Pode não ser a melhor forma, mas também precisei resolver rápido e não consegui fazer de outra maneira. Um abraço!
  4. kiko fernandes

    Auto Fill

    Oi leonardomc Usei a mesma string, só acrescentei a opção isnull. SELECT mdl_course.id , if(isnull(timecreated) , ' ' , MONTH( FROM_UNIXTIME( timecreated, '%Y-%m-%d' )) ) as mes , YEAR(FROM_UNIXTIME( timecreated, '%Y-%m-%d' )) as ano , if(isnull(timecreated) , 0 , count(RIGHT(FROM_UNIXTIME( timecreated, '%d-%m-%Y' ),7)) ) as quantidade , RIGHT( FROM_UNIXTIME( timecreated, '%d-%m-%Y' ) , 7 ) AS mesAno FROM mdl_course WHERE mdl_course.id <>1 GROUP BY ano, mes ORDER BY ano, mes ASC
  5. Luiza e "casa" é certeza que não se repete? Você definiu casa como chave única (UNIQUE KEY) não poderá ter dois nomes casa igual. Isto confere? Outro detalhe! Você tem algum retorno de erro?
  6. Oi Luiza! Estive olhando o teu código! Eu não entendo de PHP mas na instrução SQL você tem algo assim: $sql = " INSERT INTO nuke_selcasa (id,nick,casa,date,ip) VALUES (' ','$nick','$casa','$data','$ip') " Como o campo ID é auto increment você deve deixar ele de fora. Experimente desta forma: $sql = " INSERT INTO nuke_selcasa (nick,casa,date,ip) VALUES ('$nick','$casa','$data','$ip') "
  7. Oi Paulo! Se você já apagou as pastas. (Se for vista ou seven procure se existe uma pasta em c:\ProgramData\MySql - Talvez no XP também ele cria uma pasta neste local) Se não encontrar mais nenhuma talvez tenha que rodar aqueles programas que limpa o registro do windows.
  8. kiko fernandes

    Auto Fill

    Oi leonardomc! Faça um teste da seguinte forma: Select id, if(isnull(mes),'',mes) as mes, ano , if(isnull(quantidade),0,quantidade) as quantidade, mesAno from sua_tabela; Acho que assim você resolve este problema. Como sugestão eu recomendaria que você evitasse a "gravação Null" definindo como Not Null o campo na criação da tabela, bem como um valor default para ele. Na linguagem de programação que eu para trabalhar com o MySql, tem uma propriedade na livraria de conexão que é NullAsBlank:=true, isto retorna os campos que estão (Null como branco) "não escrito", você poderia ver se existe isto também na linguagem que você usa. Um abraço!
  9. Oi Luiza! Verifique também pelo software que você usa para administrar a tabela se o campo id que foi definido como (PRIMARY KEY) está realmente como auto_increment.
  10. Oi Cristiano! Acho que você está tendo problema com o resultado Null que deve estar gravado no campo de sua tabela e Null na comparação não é igual a vazio. Verifique se é isto. Caso seja tente assim: "SELECT nome, cpf, apelido FROM clientes WHERE nome LIKE '%a%' AND ( apelido LIKE '%%' or isnull(apelido) ) AND ( cpf LIKE '%%' or isnull(cpf) ) " Assim ele retornará tanto se estiver vazio ' ' ou caso esteja null. Um abraço!
  11. Oi Carlos! Existe um campo com o nome motoqueiro mesmo na sua tabela de serviços? Porque você relacionou como: "Tabela: servicos [id, empresa, contato, funcionario, destino] " (sem campo motoqueiro) Acho que ali seria servicos.funcionario. De qualquer forma creio que isto retornaria em um erro devido ao fato de não existir o campo motoqueiro. Fora este problema que não sei se foi engano ao digitar o exemplo, não encontrei problema na string. "SELECT servicos.*, clientes.empresa, funcionarios.nome FROM servicos INNER JOIN funcionarios ON servicos.motoqueiro = funcionarios.Id INNER JOIN clientes ON servicos.empresa = clientes.Id"
  12. Oi Sorokabano Vou passar uma idéia veja se é possível usa-la. Nesta situação seria bom que você tivesse a data no formato '2009-11-24 12:00:00' = Ano-Mes-Dia Hora:Minuto:Segundo Então a comparação seria feita em segundos usando a função TIMESTAMPDIFF Exemplo: select TIMESTAMPDIFF( second, dataagenda , datamarcacao ) from pedido order by TIMESTAMPDIFF( second, dataagenda , datamarcacao ) limit 1; O Resultado seria o menor tempo comparado com a dataagenda devido ao order by se fosse necessário o maior tempo poderia usar oder by TIMESTAMPDIFF( second, dataagenda , datamarcacao ) desc limit 1; Exemplos: ======= select TIMESTAMPDIFF( second, '2009-01-24 00:00:00' , ' 2009-11-24 00:00:00' ) from sua_tabela; o Resultado seria 26265600 (que dividido por 3600) = 7296 minutos / 24 horas = 304 dias Seguindo o seu raciocínio e o seu exemplo: (MARCAÇÃO) 0001 12/12/2009-12:40 Vendo isso, pegarei a marcação e verei qual data/hora esta mais proxima na tabela AGENDA (tanto pra mais quanto pra menos) que no caso é a de 12/12/2009-12:35 select TIMESTAMPDIFF( second, '2009-12-12 12:35:00' , ' 2009-12-12 12:40:00' ) from sua_tabela ; o resultado seria 300 - Transformando em minutos 300/60 = 5,00 Pode fazer o cáculo direto se desejar a resposta em minutos. select round(TIMESTAMPDIFF( second, '2009-12-12 12:35:00' , ' 2009-12-12 12:40:00' )/60,2) from sua_tabela ; resultado=5.00 ou trocando a opção second por minute select TIMESTAMPDIFF( minute, '2009-12-12 12:35:00' , ' 2009-12-12 12:40:00' ) from sua_tabela; Resultado = 5 As datas só estão ai para tornar fácil a explicação, você usará o seus campos: dataagenda , datamarcacao. Obs.: a função TIMESTAMPDIFF parece que foi incluída na versão 5.00 do MySql, mas creio que vale a idéia. Você pode chegar a este resultado usando as funções antigas de cálculo entre data e hora. O que queria deixar claro é a lógica que ao meu ver esta sua operação deveria ser transformado em segundos para que você ordene pelo menor tempo em segundos e selecione o menor. Só que eu fiquei com uma dúvida quanto a sua lógica pelo seguinte. Você deu um exemplo de atraso de 5 minutos, mas supondo que ocorra um grande atraso e o horário da marcação fosse 12:56? Seguindo o teu exemplo o menor tempo seria em relação ao horário 12:55 logo um minuto atrasado. Porém o cara está 21 minutos atrasado em relação ao horário 12:35 e no meu ver penso que o horário que importaria seria o 12:35 (a) 0001 12/12/2009-12:35 (B) 0001 12/12/2009-12:55 Horário de uma suposta marcação 12:56 diferença 1 minuto em relaçao ao item (a) e 21 minutos em atraso em relaçao ao item (B) Talvez a melhor maneira seja criar um campo aonde você adicione o horário da marcação exemplo: ================================= Horário previsto(agenda) | horário marcacao | ================================= 2009-12-12-12:30:00 | 2009-12-12 12:35:00 | 5 atrasado 2009-12-12 12:35:00 | 2009-12-12 12:56:00 | 21 atrasado 2009-12-12 12:55:00 | | 2009-12-12 13:00:00 | | ================================= Assim você iria gravando o horário que o cara passou além de ficar registrado. Se caso não foi isto, desconsidere a resposta porque ai eu entendi errado. Um abraço!
  13. Oi Luiza! Faça um teste desta forma: select id, codigo, nome, senha from nuke1.nuke_user union select id, codigo, nome, senha from pbpbb3.phpbb3_user Obs.: Os nomes dos campos devem ser iguais, caso não seja utilize o alias Exemplo: select id, codigo, nome, senha from nuke1.nuke_user union select id, codigo, nome_do_cidadao as nome, passwd as senha from pbpbb3.phpbb3_user No último exemplo foi considerado que o campo nome da tabela phpbb3_user fosse nome_do_cidadao e a senha fosse passwd onde os dois foram alterados no select para nome e senha igual ao primeiro select. Creio que assim você conseguirá! té+
×
×
  • Criar Novo...