Changes between Initial Version and Version 1 of Indexes


Ignore:
Timestamp:
09/11/25 04:13:51 (12 hours ago)
Author:
141515
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Indexes

    v1 v1  
     1== Индекси
     2
     3=== За возила
     4
     5{{{
     6-- Index for status filtering (most common query)
     7CREATE INDEX IF NOT EXISTS idx_vehicle_status ON vehicle(status);
     8
     9-- Index for dealership vehicles lookup
     10CREATE INDEX IF NOT EXISTS idx_vehicle_tax_nr ON vehicle(tax_nr);
     11
     12-- Composite index for dealership + status (for getMyVehicles)
     13CREATE INDEX IF NOT EXISTS idx_vehicle_tax_nr_status ON vehicle(tax_nr, status);
     14
     15-- Index for vehicle make/model searches (for future search functionality)
     16CREATE INDEX IF NOT EXISTS idx_vehicle_make ON vehicle(make);
     17CREATE INDEX IF NOT EXISTS idx_vehicle_model ON vehicle(model);
     18
     19-- Composite index for make + model + year (common search pattern)
     20CREATE INDEX IF NOT EXISTS idx_vehicle_make_model_year ON vehicle(make, model, p_year);
     21
     22-- Index for price range searches
     23CREATE INDEX IF NOT EXISTS idx_vehicle_price ON vehicle(price);
     24
     25-- Index for year-based filtering
     26CREATE INDEX IF NOT EXISTS idx_vehicle_year ON vehicle(p_year);
     27}}}
     28
     29=== За договори
     30{{{
     31-- Index for VIN lookups (most common join)
     32CREATE INDEX IF NOT EXISTS idx_agreement_vin ON agreement(vin);
     33
     34-- Index for client agreements lookup
     35CREATE INDEX IF NOT EXISTS idx_agreement_embg ON agreement(embg);
     36
     37-- Index for dealership agreements lookup
     38CREATE INDEX IF NOT EXISTS idx_agreement_tax_nr ON agreement(tax_nr);
     39
     40-- Index for date-based ordering (
     41CREATE INDEX IF NOT EXISTS idx_agreement_datum ON agreement(datum);
     42
     43-- Composite index for dealership + date (for getDealershipAgreements)
     44CREATE INDEX IF NOT EXISTS idx_agreement_tax_nr_datum ON agreement(tax_nr, datum DESC);
     45
     46-- Composite index for client + date (for getClientAgreements)
     47CREATE INDEX IF NOT EXISTS idx_agreement_embg_datum ON agreement(embg, datum DESC);
     48
     49-- Index for status filtering
     50CREATE INDEX IF NOT EXISTS idx_agreement_status ON agreement(status);
     51
     52-- Composite index for VIN + status (for duplicate prevention)
     53CREATE INDEX IF NOT EXISTS idx_agreement_vin_status ON agreement(vin, status);
     54}}}
     55
     56=== За уплати
     57{{{
     58-- Index for agreement lookups (most common join)
     59CREATE INDEX IF NOT EXISTS idx_payment_a_id ON payment(a_id);
     60
     61-- Index for client payments lookup
     62CREATE INDEX IF NOT EXISTS idx_payment_embg ON payment(embg);
     63
     64-- Index for date-based ordering
     65CREATE INDEX IF NOT EXISTS idx_payment_created_at ON payment(created_at);
     66
     67-- Composite index for agreement + amount (for validation)
     68CREATE INDEX IF NOT EXISTS idx_payment_a_id_amount ON payment(a_id, amount);
     69}}}
     70
     71=== За клиенти
     72{{{
     73-- Index for email lookups (login)
     74CREATE INDEX IF NOT EXISTS idx_client_email ON client(email);
     75
     76-- Composite index for email + password (login optimization)
     77CREATE INDEX IF NOT EXISTS idx_client_email_pass ON client(email, pass);
     78
     79-- Index for name searches
     80CREATE INDEX IF NOT EXISTS idx_client_name ON client(c_name);
     81}}}
     82
     83=== За претставништва
     84{{{
     85-- Index for email lookups (login)
     86CREATE INDEX IF NOT EXISTS idx_dealership_email ON dealership(email);
     87
     88-- Composite index for email + password (login optimization)
     89CREATE INDEX IF NOT EXISTS idx_dealership_email_pass ON dealership(email, pass);
     90
     91-- Index for name searches
     92CREATE INDEX IF NOT EXISTS idx_dealership_name ON dealership(d_name);
     93}}}