Su quale progetto o prodotto stai lavorando attualmente?
Golang
Deve mostrare: 1. Combinazioni uniche di utente e ID prodotto per tutti gli acquisti effettuati dagli utenti prima di essere bannati. Ordinare prima per nome utente, poi per SKU 2. Trovare utenti che hanno effettuato acquisti per un importo superiore a 5000 rubli. Mostrare i loro nomi nel formato id utente | nome | cognome | somma degli acquisti
Esiste uno schema di database che include: -- Tabella clienti CREATE TABLE customers ( id BIGSERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, city VARCHAR(255) NOT NULL ); -- Tabella prodotti CREATE TABLE products ( id BIGSERIAL PRIMARY KEY, name VARCHAR(255) NOT NULL, category VARCHAR(100) ); -- Tabella delle posizioni dell'ordine CREATE TABLE order_items ( order_id BIGINT NOT NULL, product_id BIGINT NOT NULL, qty DECIMAL(10, 3) NOT NULL CHECK (qty > 0), -- 10 cifre, 3 decimali price NUMERIC(10, 2) NOT NULL CHECK (price >= 0), PRIMARY KEY (order_id, product_id) ); -- Tabella ordini CREATE TABLE orders ( id BIGSERIAL PRIMARY KEY, customer_id BIGINT, order_date TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT CURRENT_TIMESTAMP, status VARCHAR(50) NOT NULL CHECK (status IN ('pending', 'paid', 'shipped', 'delivered', 'cancelled')) ); 1. Mostrare i primi 10 per somma di ordini degli utenti che hanno effettuato più di 2 ordini negli ultimi 30 giorni 2. Mostrare le prime 3 categorie per ricavo negli ultimi 6 mesi
Come correggere un codice con condizione di race in modo che funzioni in modo deterministico?
Perché mutex non è adatto per il lock distribuito?
È possibile descrivere i componenti principali che costituiscono la struttura dell'errore?
Ci sono restrizioni sul numero di goroutine che possono essere eseguite contemporaneamente nell'applicazione?
Costruire un indice ottimale per SELECT * FROM employee WHERE sex = 'm' AND salary > 300000 AND age = 20 ORDER BY created_at
A cosa serve il pattern Repository?
Quali storie tecniche ci sono — non sull'architettura in generale, ma sull'approfondimento nei dettagli, un caso problematico reale?
Ora vogliamo andare su HeadHunter e cercare candidati per filtri — come architettarlo?
Cosa succede creando un indice su una grande tabella calda con un normale CREATE INDEX? Come creare correttamente gli indici in produzione?
Cosa non dovrebbe esserci in una squadra?
Quali problemi possono verificarsi quando una transazione SQL è aperta e in quel momento viene inviata una richiesta HTTP?
ClickHouse ha gestito il carico senza crash?
Come si è riusciti a migliorare l'affidabilità dell'integrazione con l'aggregatore medico e a ridurre la perdita di dati dal 2% allo 0,01%? Non è troppo, il 2% di dati persi in medicina?
È necessario implementare la funzione uniqRandn, che genera una slice di lunghezza n con numeri unici e casuali. func main() { fmt.Println(uniqRandn(10)) } func uniqRandn(n int) []int { //... }
Da quanti anni sei in Go?
Cosa ti dà la sensazione di crescita, perché bisogna crescere?
Come funziona il processo di gestione delle richieste HTTP nel browser e cosa succede lato client e server?