Postagem em destaque

A incrível velocidade do Go

Imagem
Um dos motivos que gosto do Go (a linguagem de programação, não o jogo), é que ele é extremamente rápido. E não estou falando de utilizar goroutines pois aí é covardia. Estamos migrando um sistema de Coldfusion para Go e PHP e uma das rotinas insere um registro no banco de dados no início e outra no fim do processo. Pense como se fosse um log, mas um log específico para essa rotina. Dessa forma: 2023-05-18 17:45:03. 687     ... [processaImagem] Incorporando imagem 2023-05-18 17:45:03. 688     ... [processaImagem] Imagem incorporada Entre o inicio e o final do processamento levou 1ms. Até aí, tudo bem, se não fosse o fato dessa tabela ter o campo timestamp como parte da chave primária. Se reparar, o tempo é definido em milissegundos. Com o Coldfusion esse processo dura cerca de 20ms. Simplesmente migrando para Go, o tempo caiu muito, para menos de 1ms e assim, começou a dar erro de chave duplicada. A solução? Depende, sempre depende. No nosso contexto, a mais simples foi feita, pois nã

Comando SQL para totalizar um campo

Algumas vezes é preciso contar o número de ocorrências de um determinado campo em uma tabela.

Por exemplo: imagine uma tabela que tenha a placa do carro e o horário de passagem no pedágio.
PLACA     DATA/HORA
--------  -----------------
ABC-1234  01/05/12 13:14:15
BCD-2345  01/05/12 14:15:16
CDE-3456  01/05/12 15:16:17
ABC-1234  02/05/12 03:27:07
ABC-1234  03/05/12 11:30:11
CDE-3456  03/05/12 08:53:23
ABC-1234  04/05/12 20:27:14
Agora, suponha que você quer saber quantas ocorrências por placa você tem na sua base de dados. O select é simples:

SELECT placa, total=COUNT(placa)
FROM tabela
GROUP BY placa

Isso vai trazer um resultado do tipo:
PLACA    TOTAL
-------- -----
ABC-1234 4
BCD-2345 1
CDE-3456 2

Comentários

Postagens mais visitadas deste blog

Netflix não mostra ícone de streaming

Google Hacking

FTP não funciona no PHP