| 97 | | `customer_loyalty(user_id)` има уникатен индекс. Индексот по клиент и датум не го содржи order_total, па пресметката на вкупната потрошувачка и натаму бара читање на износите. |
| 98 | | |
| 99 | | ||= Индекс ||= Табела и колони ||= Намена || |
| 100 | | || `idx_customer_order_customer_user_id_order_datetime` || `customer_order(customer_user_id, order_datetime DESC)` || Пронаоѓање нарачки по клиент; поддршка за пристап по датум во рамки на клиентот. || |
| 101 | | || `idx_customer_company_id` || `customer(company_id)` || Пронаоѓање клиенти по компанијата на која припаѓаат. || |
| 102 | | |
| 103 | | {{{ |
| 104 | | #!sql |
| 105 | | CREATE INDEX IF NOT EXISTS idx_customer_order_customer_user_id_order_datetime |
| 106 | | ON kbnteam.customer_order (customer_user_id, order_datetime DESC); |
| 107 | | |
| 108 | | CREATE INDEX IF NOT EXISTS idx_customer_company_id |
| 109 | | ON kbnteam.customer (company_id); |
| 110 | | }}} |
| 111 | | |
| 112 | | === Проверка на индексите === |
| 113 | | |
| 114 | | {{{ |
| 115 | | #!sql |
| 116 | | SELECT tablename, indexname, indexdef |
| 117 | | FROM pg_indexes |
| 118 | | WHERE schemaname = 'kbnteam' |
| 119 | | AND indexname IN ( |
| 120 | | 'idx_customer_order_customer_user_id_order_datetime', |
| 121 | | 'idx_customer_company_id' |
| 122 | | ) |
| 123 | | ORDER BY tablename, indexname; |
| 124 | | }}} |
| | 97 | За овој поглед не се додава посебна група индекси. Постоечката индексна поддршка е доволна за тестираните прашалници. Индексите на заедничките табели можат да се користат и од други погледи. |