Sobes.tech

Golang

Mudelige lihtne panga süsteem: - `accounts` tabel: - `id`, - `owner_id`, - `currency`, - `created_at`. - `transactions` tabel: - `id`, - `account_id`, - `amount`, - `created_at`. **Nõuded:** 1. Kirjutage SQL, mis loob skeemi vajalike piirangutega (NOT NULL, FK, CHECK `amount` mitte-null). 2. Kirjutage päring: - saada konto praegune saldo `account_id` järgi (summa `amount`). 3. Täiendav keerukus: toetada deebet/krediit (kahe kirje). Puhastamine

Middle+
213

Kuidas töötab Go-s prügikorjaja? Kirjeldage faase ja algoritmi.

Middle+
180

Üldmulje intervjuust, kandidaadi tase, soovitused

Middle+
168

Millised sünkronsisatsiooniprimitivid on Go-s olemas? Mis vahe on Mutex ja RWMutex vahel? Millal kasutada atomics?

Middle+
164

Kuidas töötab kaart Go-s? Rääkige sisemisest struktuurist, buckets, kokkupõrgetest.

Middle+
155

Kuidas saab optimeerida otsingut andmebaasis? Mis on indeksid ja milline on nende keerukus?

Middle+
152

Millised on goroutine'ide eelised võrreldes OS-niitidega?

Middle+
152

Rääkige meile Go (scheduler) planeerijast. Kuidas see töötab? Mis on hand-off?

Middle+
146

3. Keerukus: toetada deebit/krediiti (kahe kirje). Puhastamine CREATE TABLE kontod ( id BIGSERIAL PRIMARY KEY, owner_id BIGINT NOT NULL, currency VARCHAR(3) NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT now() ); CREATE TABLE tehingud ( id BIGSERIAL PRIMARY KEY, account_id BIGINT NOT NULL REFERENCES kontod(id), amount NUMERIC(18,2) NOT NULL CHECK (amount <> 0), created_at TIMESTAMP NOT NULL DEFAULT now() ); CREATE INDEX idx_tehingud_account_id ON tehingud(account_id); SELECT COALESCE(sum(amount), 0) AS balance FROM tehingud WHERE account_id = :account_id; ALTER TABLE tehingud ADD COLUMN type VARCHAR(6) NOT NULL CHECK (type IN ('debit', 'credit')); ALTER TABLE tehingud DROP CONSTRAINT tehingud_amount_check, ADD CONSTRAINT tehingud_amount_check CHECK (amount > 0); SELECT COALESCE( SUM(CASE WHEN type = 'credit' THEN amount WHEN type = 'debit' THEN - amount ) AS balance FROM tehingud WHERE account_id = :account_id;

Middle+
119

Model a simple banking system: - `accounts` table: - `id`, - `owner_id`, - `currency`, - `created_at`. - `transactions` table: - `id`, - `account_id`, - `amount`, - `created_at`. **Requirements:** 1. Write SQL to create the schema with necessary constraints (NOT NULL, FK, CHECK on `amount` not null). 2. Write a query: - to get the current account balance by `account_id` (sum of `amount`). 3. Extra challenge: support debit/credit (double entry). Cleanup.

Middle+
118