Издания

Какво ново

История на обновленията на SQL Arena. Най-новите издания най-отгоре.

v5.2.05.06.2026 г.Текуща

Every task is now solved by writing SQL — new task formats and catalog filters, plus new task packs.

Добавено
  • New task types: debugging, data-quality checks, index design, query rewriting, schema design with constraints, transactions & locking, and access permissions (GRANT/REVOKE).
  • New catalog filters: by task format, difficulty, solved status, dialect (PostgreSQL/MySQL) and favorites.
  • Permissions tasks are graded by the resulting privilege set (least privilege enforced).
  • Transaction tasks are graded under real concurrency: safe debits, atomic transfers, idempotency, isolation levels and row locks.
  • New task packs: ride-hailing analytics, data modification, schema design, recursive hierarchies and product events.
  • Your chosen SQL dialect (PostgreSQL/MySQL) now persists across tasks.
  • Most tasks now show a preview of the expected output.
  • Hundreds of new step-by-step hints, plus an AI mentor that explains the errors in your query.
Променено
  • Every format is now code-writing: you write real SQL instead of picking an answer.
  • Task descriptions are living business scenarios in Russian and English; difficulty levels recalibrated.
v5.1.33.06.2026 г.
Поправено
  • AI task generation: descriptions now read as a real business scenario and no longer give away the solution — formulas, SQL function names and dry table listings are kept out of the text.
v5.1.23.06.2026 г.
Променено
  • Company examples on the home page and in Premium are now locale-aware: the Russian site shows Russian employers, every other locale shows international ones (Tesla, Uber, Microsoft, Spotify, Meta) whose tasks we carry.
v5.1.13.06.2026 г.
Поправено
  • Removed a stray privacy notice banner on the user profile page.
v5.1.03.06.2026 г.

Интерфейсът вече говори на всички езици на ЕС — 21 нови езика.

Добавено
  • Добавени са 21 езика на ЕС: немски, френски, италиански, нидерландски, полски, румънски, гръцки, чешки, унгарски, шведски, датски, фински, словашки, български, хърватски, литовски, словенски, латвийски, естонски, ирландски и малтийски. Изберете един в превключвателя на езиците или той се разпознава автоматично по вашата държава и език на браузъра.
  • Страницата «Докладване на грешка» вече е «Обратна връзка» (на /feedback) с два раздела: «Докладване на грешка» и «Предложете подобрение». Предложенията за подобрение стигат до екипа така, както и докладите за грешки.
Променено
  • В настройките на профила вече се вижда крайната дата на абонамента, а формулировката «еднократно плащане» е премахната.
  • Падащото меню на превключвателя на езиците вече е по-компактно.
Поправено
  • Профилите отново се отварят от класацията за влезли потребители — поверителността скрива профил само от анонимни посетители. URL-името на профила вече не може да се изтрие, затова всеки профил остава достъпен чрез връзка.
v5.0.11.06.2026 г.
Поправено
  • Плащането с чужда карта (раздел Visa/MC) на руския сайт вече се изчислява правилно в USD и се обработва през Paddle, вместо да отваря YooKassa със сума в рубли.
v5.0.01.06.2026 г.

Сертификация: издържи изпит с таймер и получи проверим сертификат за ниво.

Добавено
  • Изпити за сертификация: три нива (Foundations / Practitioner / Expert), по 8 задачи всяко, таймер за всяка задача, проходен праг 7 от 8. Всеки опит получава собствен набор от данни, така че отговорите не могат да бъдат запаметени предварително.
  • Проверим сертификат с QR код, който води към публичния ви профил; в профила вече се показва раздел със сертификати.
  • Изтрийте акаунта си направо от настройките на профила.
Променено
  • Настройките на профила бяха преработени в изчистен стил на разделен списък; Premium потребителите получават анимиран пръстен около аватара си.
v4.1.1129.05.2026 г.
Променено
  • Проверката на решенията е подсилена при 324 задачи: вече се изпълнява върху скрит набор от данни, така че вече не можете да минете, нагласяйки решението към видимия пример.
v4.1.1029.05.2026 г.
Променено
  • Автодовършването в редактора вече подсказва имена на CTE, обявени чрез WITH, когато пишете FROM/JOIN.
v4.1.929.05.2026 г.
Променено
  • AI Mentor вече вижда грешката ви и текущата заявка дори след Run — нов бутон „Explain my error“ ви позволява да обсъдите всяка грешка, включително синтактични грешки.
v4.1.829.05.2026 г.
Променено
  • Задача #91: проверката вече се изпълнява върху скрит набор от данни — вече не можете да минете, нагласяйки решението към видимия пример (например чрез LIMIT или фиксирана дължина).
v4.1.726.05.2026 г.
Променено
  • Задача #13: премахната е подсказката с готовия филтър от условието — сега сами извеждате решението.
v4.1.623.05.2026 г.
Променено
  • Картата на уменията вече покрива всички категории задачи (добавени са CTE, DDL, транзакции, оптимизация) и стана по-голяма и по-четлива.
Поправено
  • Подсказката „какво да подобрите“ в картата на уменията вече сочи към темата с най-много нерешени задачи, вместо към случайна.
  • Годишната графика на активността отново показва пълните имена на месеците, вместо да ги съкращава до една буква.
v4.1.523.05.2026 г.
Поправено
  • Решения, които връщат времеви интервал (например разликата между две времена), вече не дават грешка при изпращане.
v4.1.421.05.2026 г.
Поправено
  • Задача #88: данните са поправени — полетите от Париж вече имат различна продължителност, вместо три еднакви реда.
v4.1.320.05.2026 г.
Поправено
  • Undo (Ctrl+Z) в редактора вече пази отделна история за всеки раздел със заявка.
v4.1.220.05.2026 г.
Променено
  • Задача #624: условието вече посочва, че средната цена трябва да се закръгля до 2 знака след десетичната запетая.
Поправено
  • Предложенията на SQL редактора вече не се дублират след навигация между задачи.
  • Задача #621: клубовете без членове вече се показват в резултата с нулев приход.
v4.1.120.05.2026 г.
Променено
  • Трудността на задача #831 е променена от EXPERT на MEDIUM.
v4.1.016.05.2026 г.

SQL Arena вече е многоезична: английски, испански и португалски, всеки със собствени URL адреси на страниците и автоматично разпознаване на региона.

Добавено
  • Превключвател на езика: руски, английски, испански (Испания и Латинска Америка) и португалски.
  • При първо посещение сайтът се отваря на езика на вашия регион, а изборът ви се запомня.
  • Всеки език има собствени URL адреси на страниците (/en, /es, /es-419, /pt-br), които спокойно може да споделяте.
  • Плащане на Premium в местната ви валута: RUB, USD, EUR или BRL в зависимост от региона.
Променено
  • Английският сайт е напълно поддържан; преводите на испански и португалски се пускат постепенно.
v4.0.1118.05.2026 г.

Задачите за създаване на таблици приемат всяка валидна форма, подсказките при грешка вече са релевантни, а една задача с нееднозначен отговор беше поправена.

Поправено
  • Задачата „най-популярна двойка курсове“: примерните данни позволяваха няколко еднакво валидни отговора, докато проверката приемаше само един. Сега задачата има единствен верен отговор.
  • Задачите CREATE TABLE отхвърляха вярно решение, когато учащият именуваше ограничение (например CONSTRAINT ... PRIMARY KEY). Проверката вече сравнява структурата на таблицата — имената на ограниченията се игнорират.
  • Неуспешна задача за създаване на таблица показваше нерелевантна подсказка „add ORDER BY“. Подсказката вече е по същество — за колони, типове, NOT NULL и ключове.
v4.0.1017.05.2026 г.

Задачите за промяна на данни се решават точно както пише в условието — без недокументиран проверяващ SELECT.

Поправено
  • Задачите INSERT/UPDATE/DELETE и транзакциите (включително UPSERT, MERGE, SKIP LOCKED) вече не изискваха недокументиран проверяващ SELECT. Сега се оценяват по крайното състояние на таблицата, а на страницата на задачата се показва бележка „no trailing SELECT needed“.
  • Топ решения: служебните акаунти вече не се появяват в списъка — съответствайки на публичната класация.
v4.0.917.05.2026 г.

Задачите за създаване на таблици и индекси вече се решават точно както пише в условието — без недокументиран SELECT; обновяването на класацията на живо отново работи.

Поправено
  • DDL задачите (CREATE TABLE, ALTER, CREATE INDEX, външни ключове) вече не изискваха недокументиран проверяващ SELECT. Сега се оценяват по крайната схема на базата данни, а на страницата на задачата се показва бележка „no trailing SELECT needed“.
  • Страница с класацията: обновяването на живо е възстановено — WebSocket връзката за класацията вече не прекъсва.
  • Диаграма на схемата: при някои задачи не се показваха връзки между таблиците — стрелките на външните ключове вече се появяват на диаграмата.
  • Диалоговият прозорец „Correct!“ вече не показва спад в ранга като покачване нагоре — значката за ранг се появява само при истинско повишение.
v4.0.816.05.2026 г.

Задачите CREATE / ALTER TABLE и други многостъпкови решения могат да бъдат изпращани отново — лимитът на изрази за изпращане беше прекалено строг.

Поправено
  • Лимитът на изрази за изпращане е повишен от 3 на 20: DDL задачите (CREATE TABLE, ALTER, индекси, тригери) и многостъпковите DML вече не се отхвърлят с грешка „too many statements“.
v4.0.716.05.2026 г.

MySQL вариантът на задачите от каталога отново е синхронизиран с PostgreSQL — някои MySQL задачи се оценяваха спрямо остарели данни.

Поправено
  • MySQL вариантът на стотици задачи се изпълняваше върху остарял набор от данни — seed данните са пресинхронизирани, отговорът в MySQL отново съвпада с PostgreSQL.
  • Шест задачи, които работеха само в PostgreSQL, вече имат работещ MySQL вариант.
  • Задачите CREATE TABLE / CREATE INDEX / ALTER се оценяват по крайната схема на таблицата — грешна структура вече не се приема за вярна.
  • INSERT задачите, използващи CURRENT_TIMESTAMP / NOW(), вече не отхвърлят верен отговор заради разлика във времето на изпълнение.
  • Примерните изходи, които случайно разкриваха точния отговор, са заменени с примери без спойлери; редът на редовете се налага там, където задачата го изисква.
  • Одит на целия каталог приведе в съответствие условието, данните за проверка и еталонното решение при няколко десетки задачи, при които те се бяха разминали.
v4.0.616.05.2026 г.

Поправена е проверката на многоизразни решения — DELETE/UPDATE с финален SELECT вече се оценява правилно.

Променено
  • Датите и времената в резултатите от заявките вече се показват изчистено като 2024-01-15 08:00:00 вместо в техническия ISO формат.
Поправено
  • DML задачите (DELETE, UPDATE, INSERT) с проверяващ SELECT вече не отхвърлят верен отговор като „extra columns“.
  • Задача #768: условието вече съответства на оценявания отговор.
  • Подсказката при грешен отговор вече не предлага сравняване с блока с примера, който умишлено не е точен.
  • Чистите задачи UPDATE / DELETE / INSERT вече се оценяват по крайното състояние на таблицата — грешна промяна вече не се приема за вярна.
v4.0.516.05.2026 г.

Поправени са пет задачи, при които текстът на условието не съвпадаше със схемата и отговора.

Поправено
  • Задачи #762, #763, #764, #765, #809: условието е пренаписано, за да съответства на реалната схема и очаквания отговор.
  • AI генерирането на задачи, AI Mentor и формата за докладване на бъгове: при достигнат лимит вече показват „retry in N seconds“ вместо „ThrottlerException“.
v4.0.415.05.2026 г.

Поправена е задача #17 — проверката връщаше NULL заради бъг в схемата.

Поправено
  • Задача #17 (average-post-hiatus): схемата е приведена в съответствие със seed данните, проверката отново работи.
v4.0.315.05.2026 г.

В задачата „Move old rows to archive in one go — race-free“ (#789) условието искаше колона customer_id, която не съществува в схемата. Формулировката вече е в съответствие с реалната схема и проверката: id, status, amount.

Поправено
  • Задача #789 (hard-cte-atomic-archive): описанието споменаваше несъществуваща колона customer_id. Формулировката вече съответства на схемата orders / orders_archive и на очакваните колони id, status, amount.
v4.0.215.05.2026 г.

Съобщението „Too many requests“ вече показва точния лимит и секундите до нулиране, вместо загадъчното „ThrottlerException“. Лимитът на заявки от страна на сървъра е повишен, така че бързата навигация в дадена пътека вече не опира до тавана.

Променено
  • Лимитът на обикновени API заявки от страна на сървъра е повишен 5×. Бързото движение напред-назад между задачите в дадена пътека (10+ паралелни заявки при зареждане) вече не опира до тавана и не дава 429.
Поправено
  • При достигнат лимит на Submit или Run съобщението вече показва реалния лимит и точните секунди до повторен опит. Преди това се появяваше само загадъчното „ThrottlerException: Too Many Requests“ без подсказка за изчакване.
v4.0.114.05.2026 г.

Бутонът „Start“ на картата на пътеката отново наистина стартира пътеката — невидим оверлей с връзка към картата прихващаше клика и го пренасочваше към страницата с детайли на пътеката.

Поправено
  • На /trainer/tracks бутонът „Start“ на картата на пътеката вече не пренасочва към страницата с детайли на пътеката, вместо да я стартира. Кликът навсякъде по картата → детайли е запазен.
v4.0.013.05.2026 г.

SQL пясъчник: ползвайте свои таблици и заявки — без задача, без проверка. Плюс единен широк bento изглед за класацията, прогреса, пътеките, задачите и сесиите.

Добавено
  • Нова страница /sandbox — Monaco редактор, панел със схемата, панел с резултата, раздели с данни по таблица, сниппети за загряване. Анонимните сесии изтичат при бездействие след 30 мин, влезлите потребители получават 7 дни.
  • Запазени fiddle-и: до 5 в безплатния план, неограничено в Premium. Библиотека с търсене, копиране на връзка, изтриване и превключване на поверителността.
Променено
  • Единен широк изглед за личните страници — My Fiddles, Progress, Leaderboard, Sessions, Tasks, Tracks и страницата с детайли на пътеката вече споделят един общ облик с градиентен hero и последователна мрежа от карти.
v3.0.413.05.2026 г.

Стрелките за промяна на позицията в класацията се завърнаха — преди това колоната беше празна, защото нямаше базова снимка за сравнение.

Поправено
  • Индикаторът „изкачи се / падна / без промяна“ отново е до всеки ред в класацията. Базовата снимка за предходната седмица беше зададена; редовният седмичен cron ще продължи да я обновява.
v3.0.313.05.2026 г.

Поправен е бъг, при който повторното изпращане на вече решена задача тихомълком премахваше Power — бонусът „от първи опит“ се изтриваше. На всички засегнати потребители Power е преизчислен.

Поправено
  • Повторното изпращане на решение за вече решена задача вече не изтрива бонуса „от първи опит“ — Power за тази задача остава същият, какъвто беше веднага след първото успешно изпращане.
  • Задача #107 (разбивка на разходите по жанрове книги за 2005) вече не изисква конкретен ред на редовете — сега се приема всякакъв ред, в съответствие с формулировката на условието.
v3.0.212.05.2026 г.

Поправен е панелът със схемата на БД при няколко задачи — оранжевите линии на връзките между свързаните таблици не се изчертаваха.

Поправено
  • При някои задачи панелът „Schema“ не показваше връзките между таблиците (оранжевите стрелки 1:N) — липсващите връзки бяха добавени към наборите от данни.
v3.0.112.05.2026 г.

Поправена е задачата „Split customers into low / mid / high spenders“: примерният отговор и еталонното решение се бяха разминали с условието — сега навсякъде се използват идентификаторът на клиента и сегментите low / mid / high.

Поправено
  • Задача „Split customers into low / mid / high spenders“ (#757): примерният отговор и еталонното решение вече съответстват на условието — колони customer_id, segment, сегменти low / mid / high, подредени по customer_id.
v3.0.012.05.2026 г.

Голям ребрандинг „Arena“: нова начална страница, изградена наново класация с подиум и обновяване на живо, точките преименувани на „Power“ с марка боен топор, преизградени учебни пътеки и адаптивно AI генериране на задачи, което наистина чете последните ви изпращания.

Добавено
  • Нов раздел „League“ — 30-те потребители, най-близки до вас по Power. Филтри по трудност в глобалния раздел (Power се преизчислява за всяка стълба). Стрелки нагоре / надолу до всяка позиция — движение спрямо предходната седмица.
  • Постижения: емоджитата са заменени с векторни икони, оцветени по категория, тултиповете на браузъра показват локализирани имена; на /stats е мрежа с попъри при докосване на мобилни устройства. Ново постижение „10 Expert“.
  • Посочете име в класацията за мини карта на потребителя. Бутон „Share rank“ — връзката води към публичния ви профил с OG преглед.
Променено
  • Началната страница е пренаписана под марката „Arena“: ударно заглавие „Sharpen SQL. Take the offer.“, табло с резултати на живо в hero секцията, стълба на ранговете с пин „You“, секции за тренажора / пътеките / AI / режима Mock Interview / прогреса и заключителна лента „The axe is in your hand. Swing.“. Готова за мобилни устройства.
  • Точките са преименувани на „Power“. Светкавицата е заменена с боен топор — вече и в логото, и във favicon-а, и в прегледа при споделяне на връзка.
  • Страницата с класацията е пренаписана от нулата: подиум за топ 3 (злато / сребро / бронз), лична карта с прогрес с лента до следващия ранг, единна закачена лента с филтри, стълба на ранговете точно под заглавието, закачен ред „you“ когато сте извън топ 50, и обновяване на живо — таблицата реагира плавно на решенията на другите без презареждане.
  • Учебните пътеки са преизградени. Analyst / Backend / QA / Data Engineering — по ~50 подбрани задачи всяка: по няколко представителя за всяка клетка тема×трудност, от загрявка до EXPERT, с уклон към задачи от реални интервюта. Добавена е пътека Data Engineering плюс отделна пътека за подготовка за интервю.
  • Бутонът „Generate for me“ вече е истински адаптивен: чете последните ви 40 изпращания, избира темата с най-лошата скорошна точност и калибрира трудността спрямо нивото ви — застой смъква следващата с едно ниво, серия я повишава.
  • Новите посетители попадат на тема „Night“ по подразбиране (преди беше „Evening“). Ако вече сте избрали тема, изборът ви се запазва.
Поправено
  • Задача „Say in one number: how many active customers“ — каноничното решение изискваше клиенти с ≥2 платени поръчки, докато описанието казва „at least once“. Поправено в съответствие с описанието.
v2.4.512.05.2026 г.

EXPERT задачите вече дават честни 75 power за решение (до 281 с бонуси) вместо 10 от ниво EASY. Натрупаният power за потребителите, които вече са решили EXPERT, е преизчислен със задна дата.

Поправено
  • Таблицата с наградите нямаше ред за EXPERT, така че проверката се връщаше към стойност по подразбиране 10 и всяка EXPERT задача плащаше колкото EASY. Базата за EXPERT вече е 75 power, със същите множители отгоре (от първи опит ×2, преминаване на Mock Interview ×1.25, решение с premium ×1.5) — до 281 power за EXPERT задача. Миграция преигра xp_total за всеки профил по коригираните правила, така че всеки, който вече е решил EXPERT, получава липсващия power автоматично.
v2.4.412.05.2026 г.

Затворена е вратичката, при която задача можеше да се „реши“ чрез твърдо записване на примерния изход: при 25 набора от данни проверката вече сверява заявката ви със скрити редове, различни от показаните в описанието на задачата.

Променено
  • Решенията все още се изпълняват върху същите таблици и колони като преди, но редовете в seed данните за проверка се различават от видимия пример. Всеки истински отговор, базиран на заявка, продължава да минава, докато твърдо записан SELECT … UNION ALL …, който копира литералите от примера, вече се оценява като „wrong“. Покрити са 25 набора от данни от последната партида на каталога (списъци, CTE, прозоречни, pivot, DML, expert).
v2.4.39.05.2026 г.

Поправени са два докладвани от учащи проблема със задачи: разбърканият пример в „Students by region“ и описанието, разминало се със схемата в задачата за нетен приход.

Поправено
  • Задача „Students by region“ (#357): примерът вече е възходящ по rn (Jack / Kim / Lars в първия ред), а еталонното решение носи изричен ORDER BY rn, така че дава същия ред.
  • Задача „Users with net revenue of at least 100“ (#783): заглавието и описанието вече съответстват на реалните данни — потребители и събития purchase/refund, а не продукти и sale/refund, с праг 100, а не 1000.
v2.4.29.05.2026 г.

Шест напреднали задачи вече се доставят с предварително заредена таблица — решенията вече не започват с преамбюла CREATE TABLE.

Променено
  • Шест задачи от ниво Hard / Expert (UPSERT по една и по няколко колони, CTE с RETURNING, групов INSERT … RETURNING, опашка SKIP LOCKED, разгъване на масив чрез UNNEST) се присъединиха към останалия напреднал каталог: таблицата се създава и зарежда в набора от данни, а решението съдържа само проверяваната операция плюс финален SELECT за оценяване.
Поправено
  • Описанието на задачата „View counter“ вече не се разминава с очаквания изход: и двете вече описват една и съща таблица counters(id, count) и пет изпълнения на същия ред.
v2.4.19.05.2026 г.

DDL задачите вече не показват несвързани таблици в страничния панел със схемата.

Поправено
  • При 10 задачи CREATE TABLE (от лесни до expert) страничният панел със схемата изобразяваше таблици от несвързан набор от данни — например задача за статии показваше orders. Панелът вече е празен, както трябва да бъде, когато задачата иска да изградите таблицата от нулата.
v2.4.09.05.2026 г.

115 нови задачи, тримоден превключвател на темата Day / Evening / Night и по-мека тъмна палитра.

Добавено
  • Каталогът нарасна със 115 задачи: 20 лесни, 35 средни, 45 трудни и 15 expert — подзаявки, CTE, прозоречни функции, DML/DDL, MERGE, оптимизация на заявки, транзакции, JSONB, рекурсия и LATERAL.
  • Ново ниво на трудност «Expert» с виолетова значка и собствен филтър в каталога.
  • Тримоден превключвател на темата: Day (светла), Evening (мека тъмна) и Night (дълбока) — изберете според околната светлина, за да облекчите умората на очите.
Променено
  • Тъмната тема е омекотена: фонът премина към сиво-синьо в стил Linear (#1B1B1F) вместо предишния почти черен, основният текст спадна до zinc-300 — по-малко зацапване при дълги сесии.
  • В режим «Night» панелът на SQL редактора стои три стъпки по-дълбоко от фона с лек уклон към истинско черно — чете се като вдлъбнат панел от същото семейство.
  • Помощната справка по тема в задачата вече е съобразена с трудността: на нива Hard / Expert тя скрива базовите SELECT/WHERE/ORDER BY/LIMIT и вместо тях извежда напреднали модели — STRING_AGG, ARRAY_AGG, GROUPING SETS, LATERAL, JSONB, частични индекси и т.н.
  • Активните бутони на филтъра по трудност преминаха към меко запълване в акцентния цвят на марката вместо плътно черно — те вече не нарушават вида на светлата тема.
  • Руски етикети за трудност: «Лёгкое» → «Лёгкий», «Среднее» → «Средний», «Сложное» → «Сложный».
v2.3.08.05.2026 г.

24 нови статии в блога за начинаещи.

Добавено
  • Обхватът на темите е разширен: DML (INSERT/UPDATE/DELETE), DDL (CREATE TABLE/ALTER TABLE), агрегатни функции, DISTINCT, работа с NULL (CASE WHEN/COALESCE/NULLIF), CTE и подзаявки, прозоречни функции, низове и дати.
Променено
  • Помощна справка в тренажора: всеки елемент вече сочи към собствена статия. Преди това четирите елемента за прозоречни функции водеха към един общ преглед — ROW_NUMBER, RANK/DENSE_RANK, PARTITION BY и LAG/LEAD вече имат всеки своя.
Поправено
  • Задача #114 „How many cardiology wards“ — преименувана е очакваната изходна колона от count на wards_count, така че вече не се сблъсква визуално със запазената дума.
v2.2.28.05.2026 г.

Затворена е вратичката за нагласяне на отговорите спрямо примера: задачите вече се проверяват върху скрит набор от данни.

Променено
  • Проверката вече може да изпълни задача върху скрит набор от данни. Каноничният еталон се преизчислява върху същите данни, така че верните решения продължават да минават, докато константите, заети от видимия пример, отпадат.
Поправено
  • Задачата „Oldest club member“ вече не приема твърдо записан LIMIT, нагласен спрямо видимия пример — минава само заявка, която изразява „всички редове с минималната дата на раждане“.
v2.2.18.05.2026 г.

Полиране на картите с цените и поправки на бутона „Sign in & subscribe“ веднага след v2.2.0.

Променено
  • Цената и CTA бутонът в картите Free и Premium вече се подравняват на едно и също Y.
  • Съкратени са бележките под цената за Crypto и Visa/MC — остава само името на платежния канал.
Поправено
  • Бутонът „Sign in & subscribe“ отново е кликаем за невлезли потребители.
v2.2.08.05.2026 г.

Добавени са крипто и международни плащания с Visa/Mastercard, плюс затегнати анти-бот защити в процеса на удостоверяване.

Добавено
  • Крипто плащания през NowPayments — BTC, ETH, USDT и други. $21 тримесечно / $28 шестмесечно.
  • Международни Visa/Mastercard през Paddle с автоматичен ДДС/данък върху продажбите. $21 / $28.
  • Избор на метод на плащане в картата Premium: RU карта, Crypto, Visa/MC. Валутата се сменя според метода.
  • Cloudflare Turnstile при вход и регистрация — невидим за хората, блокира ботове.
Променено
  • Акаунтът се заключва за 15 мин след 5 грешни пароли (експоненциално до 24 ч) с изричен обратен брояч.
  • Грешките при вход и регистрация са очовечени — край с голите „Forbidden“ или „Invalid credentials“.
  • Лимит на изпращанията: 5/мин, 30/15мин на потребител. Не засяга реалните сесии за решаване.
Поправено
  • След вход се връщаме на страницата, от която сте дошли — включително при OAuth (Google, GitHub, Yandex).
  • Излизането от публична страница вече не ви изхвърля към началната страница.
v2.1.87.05.2026 г.

Завършена е поправката за запазване на Telegram, GitHub и LinkedIn на страницата с профила. Предишният релийз поправи нормализатора на потребителските имена в бекенда, но фронтенд компонентът прекъсваше onBlur — PATCH заявката всъщност никога не се изпращаше. Полето визуално приемаше въведеното, сървърът оставаше празен, а след презареждане полето беше празно. Сега сравнението при blur използва стойността, заснета при фокусиране, а не текущо въвежданото.

Поправено
  • Полетата Telegram, GitHub и LinkedIn на страницата с профила вече отново се запазват. Един useEffect презаписваше ref-а „last-saved“ при всяко натискане на клавиш, така че проверката при onBlur сравняваше текущата стойност със самата себе си и пропускаше PATCH. Проверката при blur сега сравнява със снимка, направена при фокусиране.
v2.1.77.05.2026 г.

Поправено е запазването на Telegram, GitHub и LinkedIn потребителски имена на страницата с профила: писането на формата от плейсхолдъра като t.me/username се отрязваше до боклук от рода на t.me. Сега всяко въвеждане — само потребителско име, @handle, t.me/handle или https://t.me/handle — се нормализира до изчистено потребителско име.

Поправено
  • Полетата Telegram, GitHub и LinkedIn на страницата с профила вече се запазват правилно, когато адресът е написан без https://. Преди това t.me/durov се запазваше като t.me, github.com/octocat като github.com, защото нормализаторът изискваше схема http(s):// и иначе отрязваше стойността при първата наклонена черта.
v2.1.65.05.2026 г.

Премахнат е фалшиво положителният рекламен банер за premium в панела с резултата от решението: задействаше се при безплатни задачи и дори за premium потребители. Това беше мъртъв UI от самото начало — premium задачите са блокирани при отваряне, така че редакторът никога не ги вижда.

Променено
  • В празничния модал „Correct!“ бутончето „+50% Power per solve — go Premium“ вече има правилен хоризонтален отстъп — короната и стрелката вече не докосват ръбовете на бутончето.
  • AI Mentor вече получава компактен контекст на задачата: активния SQL диалект, таблиците, връзките, очакваните колони, примерния изход и последния diff от проверката. Еталонният SQL се използва само като частен контекст за обяснения на грешки и по-късните нива на подсказки.
Поправено
  • Рекламният банер „Interview tasks — Premium“ изчезна от панела с обратна връзка. Преди това всяка грешка от страна на сървъра, съдържаща думата premium в трасето си (например липсваща колона solved_as_premium веднага след миграция), задействаше съвпадение по подниз и изобразяваше рекламата — дори при безплатни задачи и дори за premium потребители.
v2.1.55.05.2026 г.

Premium вече дава +50% Power за всяка решена задача — бустът се закрепя за задачата завинаги, дори след изтичане на абонамента. AI Mentor вече не изсипва решението при първата подсказка и вече ескалира помощта за всяка задача поотделно. Освен това е премахнат началният коментар -- Click ▶ Run от редактора на първата задача.

Добавено
  • Premium абонаментът дава множител ×1.5 Power за всяка решена задача. Бустът се заключва в момента на решаване, така че остава в общата ви сума дори ако абонаментът по-късно изтече.
  • Празничният модал „Correct!“ вече показва подкана за надграждане за безплатните потребители точно под чипа +Power: „Get +50% Power per solve — go Premium“, водеща към /pricing.
Променено
  • AI Mentor вече ескалира подсказките за всяка задача. Първата заявка получава само насока без имена на оператори; заявки 2-4 добавят концепция и категория; от заявка 5 менторът може да назове LIKE / WHERE / GROUP BY директно. Броячът се нулира на всеки 24 часа.
  • Обясненията на грешни отговори вече следват същите нива на подсказки като обикновените подсказки — те вече не разкриват конкретни оператори при първото неуспешно изпращане.
Поправено
  • Затворени са оставащите констатации от одита на SQL задачите: поправен е еталонът на Tournament Winners, подравнени са TIMESTAMP прегледите при няколко задачи и е възстановен PostgreSQL вариантът за една AI задача.
Премахнато
  • Премахнат е началният коментар -- Click ▶ Run — see what's in this table от редактора на първата задача. Отворените задачи вече започват с празен редактор.
v2.1.45.05.2026 г.

Преработени са филтрите на каталога със задачи: статусът стана сегментиран контрол с 3 състояния (All / Unsolved / Solved) с подразбиране Unsolved, добавен е филтър по диалект, чиповете за теми и компании вече показват текущия си брой задачи, активните филтри се показват като премахваеми бутони с възможност „Reset all“.

Добавено
  • Филтър по диалект в каталога: All / PG / MySQL — собствен сегмент до контрола за статус.
  • Чиповете за теми и компании вече показват колко задачи съвпадат: „Windows (43)“, „Tinkoff (5)“. Чиповете с нула задачи избледняват.
  • Ред с бутони за активни филтри: всеки приложен филтър (търсене, трудност, статус, диалект, любими, тема, етикет, компания, регион) се изобразява като премахваем бутон; „Reset all“ връща всичко към стойностите по подразбиране.
Променено
  • Филтърът за статус на задачите вече е сегментиран контрол с 3 състояния (All / Unsolved / Solved) с подразбиране Unsolved. Замества единичния превключвател „Hide solved“.
  • Контролът за подреждане е преместен в горната лента — преди беше заровен най-долу и скрит зад скрола.
  • Превключвателят за любими е преместен в горната лента с филтри — вече е до другите двоични превключватели.
Поправено
  • Значката на филтрите вече не показва „1“ от самото начало — изгледът по подразбиране „Unsolved“ не се брои за приложен филтър.
v2.1.35.05.2026 г.

Одит на целия каталог: проверката вече не отхвърля верни отговори заради сериализация DATE-срещу-TIMESTAMP, примерните прегледи при 60+ задачи вече съответстват на това, което всъщност връща еталонното решение, а 5 задачи, използващи CURRENT_DATE / NOW(), са фиксирани към определен момент, така че прегледите спират да се отместват ден след ден. Плюс поправка в описанието на задачата за месечни транзакции по доклад на потребител.

Поправено
  • Проверка: добавена е нормализация на дата като timestamp (2024-01-01T00:00:00.000Z2024-01-01) — верните отговори спират да получават „row count matches, contents differ“ заради форматирането на типа на връщане.
  • Задача „Monthly transactions and chargebacks“: описанието вече пояснява, че chargeback принадлежи на месеца на първоначалната транзакция, а не на датата на връщането; прегледът показва дати от първия ден на месеца вместо ISO timestamp-и, отместени по часова зона.
  • Регенерирани са примерните прегледи при 60+ задачи: числово форматиране (100100.00), показване на часова зона (+03+00), DATE като TIMESTAMP, INTERVAL като обект — прегледът вече съответства на това, което връща изпълнителят на живо.
  • Пет задачи, използващи CURRENT_DATE / NOW() / CURRENT_TIMESTAMP в seed данните си (#170, #601, #602, #668, #693), вече са фиксирани към 2026-05-05 12:00:00 UTC. Прегледите спират да се отместват.
v2.1.24.05.2026 г.

Преработен е блогът: търсене, навигация по 10 раздела, първите 7 урока за начинаещи. Имената на командите в помощната справка в задачата вече са кликаеми връзки към статии. Страницата с релийзи получи дърво на версиите със scroll-spy.

Добавено
  • Блог: търсене из заглавия, съдържание и етикети + ляв страничен панел с раздели. Активният раздел се осветява при скрол.
  • Блог: 7 първи урока за начинаещи — SELECT … FROM, WHERE, ORDER BY, LIMIT, INNER JOIN, LEFT JOIN, псевдоними.
  • Помощна справка по тема в задачата: имената на командите вече са сини връзки към съответния урок в блога — отварят се в нов раздел.
  • Страница с релийзи: дърво на версиите отляво, групирано по major.minor; кликването скролва до версията и обновява хеш котвата.
  • Бутон „Copy SQL“ на всеки ред в раздела Submissions.
Поправено
  • Правилно съгласуване на множествено число на руски навсякъде: „221 задача“, „2 задачи“, „5 задач“ вместо старото „221 задач“.
  • Помощната справка по тема в задачата вече не подскача при разгъване — мястото за лентата за скролване вече е запазено.
  • Markdown таблиците в статиите от блога вече се изобразяват като HTML таблици вместо като един обикновен текстов ред.
v2.1.14.05.2026 г.

Качествен преглед на целия каталог: поправени са 23 неизпълними задачи, пренаписани са 66 английски описания, подравнени са описанията и примерните прегледи при още няколко десетки. Плюс една поправка, докладвана от потребител.

Променено
  • Примерните прегледи при 50+ задачи вече съответстват на това, което връща еталонното решение.
  • Свити са дублираните етикети на компании в чиповете на филтъра за задачи.
Поправено
  • Поправени са 23 задачи (pharma-*, loyal-*, hotel-*, qa-*), които не можеха да бъдат решени заради несъответствие между схема и seed данни.
  • Пренаписани са английските описания на 66 задачи lc-* / lc2-*, които преди се доставяха с мостра или фрагмент.
  • Задачата „Rooms Booked on September 2, 2019“ вече не приема грешния отговор.
  • Десет задачи, при които описанието не съвпадаше с еталонното решение, вече са съгласувани.
  • Седем задачи на Tochka се доставяха с чуждо условие — пренаписани са.
v2.1.04.05.2026 г.

69 нови задачи, взети от реални интервюта за работа на руския пазар (Yandex, Tinkoff, Sber, VTB, Alfa, VK, Ozon, Avito, Magnit, Samokat и още 23 компании) — изградени около по-широката вселена от типове на PostgreSQL: UUID, JSONB, ENUM, INTERVAL, TSTZRANGE, INET, NUMERIC и POINT. Плюс ключови поправки по доклади на потребители и индикатор с червена точка „What's new“ в страничното меню.

Добавено
  • 69 нови задачи, взети от реални интервюта в руски компании. 33 работодатели: Yandex, Tinkoff / T-Bank, Sber / SberMarket, VTB, Alfa-Bank, Gazprombank, Rosbank, Sovcombank, MTS / MTS Bank, Otkritie, Renaissance Bank, Megafon, VK, Ozon, Avito, Magnit, Lenta, Wildberries, Cian, ivi, Delimobil, Aviasales, Samokat, Domclick, Lesta, Skypro, Uchi.ru, Sravni.ru, Vizor, CloudReports и Yandex Practicum. Всички с етикет Interview, достъпни за Premium.
  • Богати типове на PostgreSQL в схемите на задачите. Повечето задачи преди използваха INT + VARCHAR(100) — добре за учебникарски примери, далеч от продукцията. Новите задачи въвеждат UUID за PK на клиенти и поръчки, NUMERIC(15,2) за пари и NUMERIC(12,4) за валутни курсове, TIMESTAMPTZ за събития, INTERVAL за продължителности на разговори и сесии, TSTZRANGE / DATERANGE / NUMRANGE за SCD2 истории и прозорци на валидност, JSONB за метаданни и полезен товар на събития, ENUM (с изричен CREATE TYPE) за статуси и категории, INET за IP в задачите за антифрод, POINT за GPS координати, TEXT[] / INTEGER[] за етикети и масиви от идентификатори. Така тренажорът ви запознава със същите типове, които ще срещнете в продукцията.
  • Индикатор с червена точка на елемента „What's new“ в страничното меню — появява се, когато е излязъл нов релийз, който още не сте отворили. Точката изчезва след едно посещение на /releases (флагът се пази в localStorage на този браузър). Преди това индикаторът съществуваше само в горната навигационна лента; в оформления само със странично меню той беше недостъпен.
Променено
  • Правилно изобразяване на новите типове в таблицата с резултата от заявката. Преди това колоните JSONB, INTERVAL и POINT се изобразяваха като „[object Object]“, а масивите (TEXT[], INTEGER[]) се свиваха до низове, разделени със запетаи — структурата беше невидима. Сега JSONB и масивите се изобразяват като четим JSON, INTERVAL като 1d 02:30:00, POINT като (x, y). Булевите стойности и UUID-ите запазват текстовото си изобразяване.
  • ER диаграмите на страницата на задачата получиха записи в палитрата за новите типове: UUID виолетов, JSONB жълт, INTERVAL пурпурен (същото семейство като другите типове за дата/час), TSTZRANGE / DATERANGE / NUMRANGE розов, INET циан, POINT розов, потребителските ENUM-и розово-червен. Преди това тези типове отиваха в сивото по подразбиране и не се различаваха от обикновените INT / VARCHAR.
  • Шестте поправени задачи по-горе също получиха обогатена схема в същия стил като новия комплект интервюта: UUID първични ключове, JSONB полезен товар, ENUM типове за пол / категории / статуси, NUMERIC(15,2) вместо INT за заплати и цени, INTERVAL за продължителности. Формулировката на задачите беше леко коригирана, за да обоснове новите типове, но основният проблем остава непроменен. Това е първата стъпка в надграждането на по-старите задачи — още в предстоящите релийзи.
Поправено
  • Поправени са няколко по-стари задачи, докладвани от потребители. „Project Employees II“ — ER диаграмата показваше Employee + Department вместо Project + Employee, докато реалната схема беше правилна; приведохме диаграмата в съответствие. „Reported Posts“ — описанието не уточняваше, че причината за докладването е в колоната extra: сега го прави. „Sales Analysis I“ — еталонното решение използваше SUM(price), въпреки че схемата има колона quantity, което бъркаше; преформулирано като SUM(quantity * price), по-близко до реалния приход. „Swap Salary“ — задачата беше свързана с грешен набор от данни (Employee + Department вместо Salary(id, name, sex, salary)), което я правеше нерешима; пресвързана с каноничния набор от данни. Същото тихо разминаване в ER диаграмата при „Project Employees III“ и „Reported Posts II“ получи същата поправка.
v2.0.03.05.2026 г.

Голям релийз: нова навигация с лента отляво, строгият режим Mock Interview с бонус +25% Power, публични профили и приятели, имейл известия, теги на компании в цветовете на марките, допълнителни филтри и блок с партньорски курсове. Плюс важна поправка за поверителност между акаунти и десетки UX подобрения.

Добавено
  • Блок с партньорски курсове. На страницата със задачи (на широки екрани) дясна колона показва подбран набор от партньорски курсове; на мобилни устройства е хоризонтален въртележка над списъка. Картите водят към лендинг страници на партньори с UTM етикети — за нас това е начин да поддържаме цената на абонамента ниска, покривайки инфраструктурните разходи.
  • Нов режим Mock Interview — строга симулация на реално интервю. Всяко единично нарушение (смяна на раздел, поставяне, излизане от цял екран, > 1 секунда загуба на фокус на прозореца) автоматично проваля сесията. Подсказките, AI Mentor и помощната справка са скрити и заключени. Продължителности: 5 / 10 / 15 / 30 / 60 минути. Безплатен план — 1 опит на ден; Premium — неограничено. Докато сесията е активна, заобикалящата навигация (страничната лента, „Tasks“, „Top solutions“, „Next task“, „Leave track“, Prev/Next/Random) е заключена — единственият изход е изричният бутон „End“ или затварянето на раздела (което автоматично изоставя сесията).
  • +25% Power за всяка задача, решена в режим Mock Interview — бонусът е за всяка задача поотделно и е отбелязан в отчета след сесията. Класацията вече има информационна колона „Mock“ (същият брой се показва в картата на профила и на /u/<username>); тя не влияе на подреждането по Power.
  • Публични профили на /u/<username>: изберете кратко потребителско име и включете публичния превключвател — всеки анонимен посетител вижда ранга ви, Power, текущата серия, броя постижения, топлинната карта на активността и връзките към GitHub / Telegram / LinkedIn. Не се разкриват лични данни.
  • Приятели: добавяйте потребители по публичното им потребителско име, управлявайте входящи и изходящи заявки, вижте специален раздел с класация на приятелите с техните Power, серия и решени задачи.
  • Любими: всяка карта на задача вече има звезда — кликнете я и задачата попада във филтъра „Favourites only“. Списъкът се пази на сървъра, свързан с акаунта ви, и оцелява при смяна на браузъри.
  • Имейл известия (превключватели в профила). „Save your streak“ — вечерно напомняне, когато серията ви е ≥ 3 дни и днес не сте решили нищо. „Weekly digest“ — съботно сутрешно обобщение с решените задачи от изминалата седмица, текущата серия и най-слабата категория.
  • Premium потребителите са визуално отбелязани навсякъде, където се появяват аватари: холографски градиентен пръстен (класация, приятели, профил, странична лента, публична страница /u/<username>); малка значка корона в ъгъла на големите аватари. Не влияе на подреждането.
  • Теги на компании в цветовете на марките по картите на задачите: жълто за Yandex / Tinkoff / Beeline, зелено за Sberbank / Spotify / OpenAI, синьо за VK / Ozon / Google / Meta, червено за MTS / Alfa / Tesla, виолетово за Stripe / Skypro / Wayfair, оранжево за Amazon / Alibaba и така нататък. Преди това всеки таг беше в един виолетов цвят.
  • Допълнителни чипове за SQL клаузи във филтъра „Topic“ на страницата със задачи: освен 8-те широки категории (SELECT, JOIN, подзаявки, прозоречни, агрегатни, CTE, DML, DDL) вече можете да включите GROUP BY, COUNT, HAVING. Комбинирайте ги с категориите за по-точно филтриране.
  • Панелът „DB Schema“ на страницата на задачата вече може да се свива. Превключвателят до заглавието на задачата скрива колоната и освобождава ширина за редактора и таблицата с резултата. Състоянието на свиване се запомня за всеки браузър, така че схемата се отваря по същия начин при следващата задача.
  • 8 нови задачи от интервюта от Tochka — вариращи от EASY до HARD. CRM сценарии (намиране на клиенти с активна заявка), портфейлни изчисления (структура, среднопретеглен срок до падеж, динамика на стойността), заявки за облигации с прозоречни функции. Решения за PostgreSQL и MySQL.
  • Раздел блог на /blog. Дълги уроци — започвайки със задълбочен разбор на прозоречните функции. Двуезично съдържание, slug URL адреси, OG карти за споделяне в социалните мрежи. Достъпен от долния колонтитул и от дъното на страничната лента.
  • Персонализирана страница 404. Старата страница по подразбиране на Next.js показваше черен текст на бяло — невидим в тъмен режим. Новата страница използва токени на темата и се намира в общия облик, държейки навигацията под ръка.
Променено
  • Навигацията е редизайнирана. За влезли потребители вътре в приложението основната навигация се премести в лента отляво — Trainer, Progress, Leaderboard и другите раздели са там, с Power + серия под аватара ви и превключватели за език/тема най-долу. Началната страница, ценообразуването и потоците за удостоверяване запазват тънката горна лента. Помощните страници (What's new / Report a bug / Blog) наследяват облика, от който сте дошли.
Поправено
  • Premium градиентният пръстен около аватарите вече се показва във всеки раздел на класацията — преди това пръстенът се появяваше само в раздела „All time“ и тихомълком отпадаше в „Week“ и „Month“, защото бекендът не подаваше флага за абонамент за периодичните класации.
  • Редакциите на името и аватара в профила ви вече се отразяват незабавно в страничната лента — без нужда от презареждане на страницата. Преди това старата карта на потребителя можеше да се задържи до пълно опресняване.
  • Изтичане на данни между акаунти при смяна на потребители в същия браузър. Преди това, след излизане / влизане с друг акаунт, тези можеха да се запазят: разговори с AI Mentor, чернови на SQL в редактора, флагове „solved“ за отделните задачи, активни сесии на mock interview, брояч на AI генериране, кеш на любимите. Сега излизането и всеки път на влизане (форма, OAuth, имейл потвърждение) изтрива всичко, свързано с предходния потребител.
  • Връзката „Friends rating“ от профила вече води директно към раздела Friends — преди това ви оставяше на глобалната класация. Лентата за начинаещи „Start here“ вече не се връща, след като сте я отхвърлили; преди това отхвърлянето се нулираше при всяко излизане / влизане.
  • Десетки подобрения на мобилното оформление и взаимодействието: по-компактен модал с отчета след сесия, правилни отстъпи на филтрите на тесни екрани, банерът с обратна връзка вече не застъпва страничния панел при 1024px, полета за име + имейл на страницата за докладване на бъг за анонимни подаващи.
v1.2.93.05.2026 г.

Спешна поправка на UX на редактора на тесни екрани: попъпът „Editor settings“ вече не се отрязва от панела с кода и вече не излиза извън ръба на изгледа на мобилни устройства. Същият бутон зъбно колело, който има десктопът, вече присъства и в мобилната лента с инструменти, а настройката за размер на шрифта най-сетне се прилага към мобилния редактор.

Поправено
  • Попъпът „Editor settings“ можеше да се отреже от ръбовете на страницата и нямаше вътрешен скрол — на тесен лаптоп или телефон половината настройки просто бяха невидими. Попъпът вече се изобразява върху цялата страница (чрез портал), автоматично се прихваща към видимата зона и развива вътрешна лента за скролване, когато съдържанието му надхвърли височината на изгледа. Заглавката със заглавието и бутона за затваряне остава закачена при скролване.
  • В мобилния изглед на редактора (≤1024px) лентата с инструменти нямаше зъбното колело за настройки на редактора — „Font size“ беше достъпно само от десктопа. Зъбното колело вече стои до PG/MySQL и Format, а настройката за размер на шрифта наистина мащабира мобилния вход на редактора.
v1.2.71.05.2026 г.

Спешна поправка по доклад за бъг: задача #240 („Staff Bonuses“) показваше грешна схема — показваше Employee + Department вместо реалните Employee + Bonus, правейки условието нечетимо.

Поправено
  • Задача #240 „Staff Bonuses“: визуализаторът на схемата изобразяваше остарели таблици Employee + Department (с полета department_id, manager_id) и кух раздел Department. Пясъчникът и еталонното решение бяха правилни през цялото време — само метаданните на визуализатора бяха грешни. Сега схемата показва реалните таблици Employee + Bonus с връзката Bonus.empId → Employee.empId.
v1.2.61.05.2026 г.

Обогатени набори от данни при 268 от 339 задачи — по-пълни изходни таблици, по-смислени редове в очаквания изход, задачите вече не изглеждат развалени.

Променено
  • Масово обогатяване на наборите от данни: 268 от 339 задачи получиха по-пълни seed данни — обикновено 6-12 реда в основните таблици вместо 2-4, с разнообразие по осите филтриране/JOIN/GROUP BY, които еталонното решение използва. Засегнати са 137 уникални набора от данни. Еталонните решения и схемите не са променени. Прогресът на потребителите е запазен — вече решените задачи остават решени, Power и постиженията не се преизчисляват.
  • Всяка обогатена задача беше валидирана: еталонното решение беше изпълнено върху новите seed данни чрез изпълнителя, sample_output регенериран от реалния резултат.
Поправено
  • Задача #38 (well-paid-employees) — първоначално спешна поправка във v1.2.4, сега част от по-широкия преглед.
v1.2.51.05.2026 г.

Спешна поправка по доклад за бъг: панелът „Expected output sample“ вече пояснява, че броят редове там не трябва да съвпада с таблиците в схемата.

Поправено
  • Добавено е пояснение над панела „Expected output sample“: „това е как изглежда верен отговор — броят му редове е негов собствен, не е нужно да съвпада с таблиците в схемата“. Преди това потребителите броеха редовете в една от таблиците на схемата и предполагаха, че задачата е развалена, когато числата се различаваха.
v1.2.430.04.2026 г.

Спешна поправка по доклад за бъг: задача #38 „Salary higher than manager“ вече се изпълнява върху подходящ набор от данни с три реални случая. Плюс малка оранжева точка на „What's new?“, когато излезе нов релийз.

Добавено
  • Малка оранжева точка се появява на елемента от навигацията „What's new?“, когато излезе нов релийз. Едно посещение на /releases я премахва до следващия релийз.
Поправено
  • Задача #38 (well-paid-employees): наборът от данни беше прекалено оскъден — 6 служители и един-единствен случай „подчинен печели повече от мениджъра“, което я караше да изглежда, че данните са грешни. Разширен до 9 служители в два отдела с три ясни случая (Eve > Alice, Frank > Dave, Henry > Bob).
v1.2.330.04.2026 г.

Нова страница „Report a bug“ с прикачени екранни снимки, вторична група в навигацията и по-компактна лента „Start here“ на мобилни устройства.

Добавено
  • Нова страница „Report a bug“ в навигацията: форма с тема + описание с до 5 екранни снимки / кратки клипа (поддържа се drag-and-drop). Докладите попадат в нашата пощенска кутия за бързо обработване.
  • Навигацията получава вторична група — „What's new?“ и „Report a bug“ — отделена от основните раздели с тънка вертикална разделителна линия.
Променено
  • Лентата за начинаещи „Start here“ е по-компактна на мобилни устройства — по-кратко заглавие, скрито описание, по-тесни карти. Освобождава място за самия списък със задачи.
Поправено
  • Лентата за начинаещи „Start here“ вече не премигва за части от секундата при отваряне на страницата със задачи — сега се изобразява едва след като /progress се зареди.
  • Акцентът в бележките за релийза (горният едноредов текст) вече изобразява правилно обратните апострофи — преди това показваше буквалното „?lang=“ вместо стилизирано бутонче с код.
  • Призрачната вертикална лента за скролване на страницата „Learning Tracks“ изчезна — min-h-screen в комбинация с навигацията налагаше ~60px допълнителна височина дори когато съдържанието се побираше.
v1.2.230.04.2026 г.

UX полиране из целия тренажор плюс URL параметър ?lang= за реклами и директни връзки за конкретен език.

Добавено
  • Попадайте на конкретен език чрез ?lang=en или ?lang=ru в URL адреса: https://sql.coderang.dev/?lang=en. Удобно за реклами и споделяне на връзки за конкретен език; изборът се запомня за една година.
Променено
  • Когато дневните AI подсказки свършат, бутонът „Explain“ се превръща в „Cheatsheet“ и отваря справката по тема.
  • Звездата за любими вече е видима на мобилни устройства и леко видима на десктоп, вместо скрита до посочване с мишката.
  • Описанието на задачата вече не подскача, когато помощната справка се разгъва. Звездата е по-ярка при посочване.
  • При DDL задачите панелът със схемата показва „no starting tables; create them“ вместо празно платно.
  • AI бутонът вече наистина пулсира само при грешки (класът за анимация не беше дефиниран преди това).
  • Power и Streak в навигацията се зареждат от localStorage преди заявката към сървъра — край с премигването „0 ⚡“.
  • Броячът на AI генериране вече не се нулира на 0 след пренасочване към генерираната задача.
  • Мобилни приятни детайли: значки за трудност с еднаква ширина (звездата подравнена), текстът на долната лента с раздели се побира, анимация на мащабиране на дневния брояч, тултип на иконата за серия, руски правила за множествено число.
Поправено
  • Имената на руските компании (Сбербанк, Яндекс, Авито…) вече се изобразяват в латинска транслитерация (Sberbank, Yandex, Avito) на английския интерфейс; кирилицата остава на руски.
  • Имената на записите в помощната справка (Aliases, Scalar subquery и т.н.) вече се превеждат правилно при смяна на езика.
  • Седмичната/месечната класация вече прилага бонуса от първи опит ×2 и игнорира повторните изпращания, в съответствие с начина, по който се изчислява натрупаният Power. Преди това изгледът за периода показваше приблизително половината от натрупаното — бъг в изчислението, не в данните.
  • Премахнат е мъртъв раздел Solutions — нито един бутон не го активираше, но той дублираше натоварването.
  • Обратните апострофи вече не оставят празнина преди следваща пунктуация („Action.“).
  • Празните състояния на панела с резултата вече се превеждат правилно на английски.
v1.2.130.04.2026 г.

Полиране на задачите за промяна на данни и общо изобразяване на описанията.

Добавено
  • Предупреждение за DDL/DML задачите: задачите UPDATE/INSERT/DELETE и CREATE/ALTER/DROP вече показват кратка бележка „no trailing SELECT needed“ — край с гаданията какво да се извежда.
Променено
  • Помощната справка по тема вече зачита типа на задачата: DML задачите вече не показват SELECT/ORDER BY/LIMIT, а DDL задачите показват само команди за промяна на схемата.
  • Маркираните с обратни апострофи токени в описанията на задачите (\id = 4\, \users.email\) вече се изобразяват като акцентни бутончета с код вместо суров текст — описанията се четат точно както авторите ги пишат.
  • Блоковете с код в помощната справка вече имат акцентна лента отляво и фина рамка — четат се като истински сниппети с код вместо като сиви петна.
v1.2.030.04.2026 г.

Въвеждане за новодошли: лента „Start here“, стартов SQL за първата ви задача и помощна справка по тема във всяка задача. Подсказките при грешен отговор вече са конкретни и не изразходват AI квотата ви.

Добавено
  • Лента „Start here“ в горната част на страницата със задачи — 8 прости SELECT задачи за начинаещи. Показва се, докато не решите нещо; скролва се чрез влачене с курсор хващане.
  • Стартов SQL в редактора. Първата задача, която отворите, предварително попълва SELECT * FROM <first_table> LIMIT 5;, така че да можете да натиснете ▶ веднага и да видите как изглеждат данните.
  • Помощна справка по тема. Панелът на задачата вече има сгъваем справочен блок със съответните SQL команди, синтаксис и обяснение в един ред — съобразен с темата: SELECT, JOIN, агрегатни, подзаявки, прозоречни, CTE, DML, DDL.
Променено
  • Банерът при грешен отговор вече е конкретен: назовава излишни/липсващи колони, разлики в редовете, проблеми с подреждането и често срещани SQL грешки. Работи локално, без изразходване на AI квота.
v1.1.030.04.2026 г.

Автодовършване, съобразено с псевдонимите, в SQL редактора и значителни подобрения на мобилното оформление.

Добавено
  • Страница с релийзи: историята на обновяванията вече е видима на /releases.
  • Автодовършване, съобразено с псевдонимите. След <alias>. предложенията са ограничени до колоните на тази единствена таблица. Самите псевдоними се довършват с Tab.
  • . вече е знак за задействане: предложенията изскачат автоматично след него, без нужда от Ctrl+Space.
Променено
  • Мобилното меню вече се наслагва върху съдържанието, вместо да избутва страницата надолу. Затваря се при докосване отвън.
  • 300+ описания на задачи са пренаписани: добавен е бизнес контекст, изброени са изходните колони, подреждането и закръгляването са направени изрични.
Поправено
  • Описанието на задача на мобилни устройства вече се скролва правилно, когато текстът е дълъг. Преди това засядаше и блокираше достъпа до разделите долу.
  • Долната лента с раздели на тренажора вече винаги е видима на всеки мобилен браузър (Yandex Browser, MIUI, Samsung Internet). Преди това се отрязваше под изгледа.
  • Мобилното меню вече е напълно непрозрачно. Преди това 5% от фоновото съдържание прозираше на браузъри без поддръжка на backdrop-filter.
  • На тесни екрани (320px и по-малко) падащото меню за подреждане на задачите вече не излиза извън десния ръб.
  • Стар бъг на автодовършването: писането на t.e след FROM employee t вмъкваше t.employee.salary (невалиден SQL). Псевдонимът вече се зачита.
v1.0.010.04.2026 г.

Първа стабилна версия на SQL Arena.

Добавено
  • 259 подбрани SQL задачи в 6 категории: SELECT, JOIN, агрегатни, подзаявки, прозоречни, DML.
  • 96 задачи от интервюта от водещи технологични компании (Google, Meta, Amazon, Stripe и др.).
  • Поддръжка на два SQL диалекта — PostgreSQL и MySQL с мигновено превключване.
  • AI генериране на задачи: уникални задачи, адаптирани към вашето ниво на умение.
  • AI Mentor: контекстни подсказки, без да издава отговора.
  • 3 учебни пътеки: структурирани маршрути от основите до напреднал SQL.
  • Изпълнение на SQL в реално време в изолирана среда с проверка на резултата (разлика по колони/редове/ред).
  • OAuth удостоверяване през GitHub, Google, Yandex, плюс регистрация с имейл/парола.
  • Класация на базата на XP (Power), потребителски профили, постижения, тъмна и светла тема.
  • Premium абонамент с интеграция на YooKassa и анти-бот ограничаване на честотата.
  • Интерактивни ER диаграми на схеми, Monaco редактор с подсветка и форматиране на SQL.
  • Двуезичен интерфейс: руски и английски.