🚀 Релиз: SQL Formatting Preview в T-SQL Analyzer CLI
В последнем обновлении инструмента T-SQL Analyzer CLI от ErikEJ появилась функция предварительного просмотра форматирования SQL-кода.
✨ Основные возможности:
Автоматическое форматирование T-SQL скриптов с использованием встроенных правил.
Интеграция с анализатором кода, позволяющая одновременно проверять и форматировать скрипты.
Поддержка командной строки, что удобно для автоматизации процессов и интеграции в CI/CD пайплайны.
🔧 Пример использования:
Эта команда проанализирует и отформатирует указанный SQL-скрипт согласно установленным правилам.
📌 Подробнее о новых возможностях и инструкциях по установке читайте в официальной документации.
#sqlserver #tsql #dotnet #cli #devtools
https://github.com/ErikEJ/SqlServer.Rules/tree/master/tools/SqlAnalyzerCli#sql-formatting-preview
@sqlhub
В последнем обновлении инструмента T-SQL Analyzer CLI от ErikEJ появилась функция предварительного просмотра форматирования SQL-кода.
✨ Основные возможности:
Автоматическое форматирование T-SQL скриптов с использованием встроенных правил.
Интеграция с анализатором кода, позволяющая одновременно проверять и форматировать скрипты.
Поддержка командной строки, что удобно для автоматизации процессов и интеграции в CI/CD пайплайны.
🔧 Пример использования:
tsqlanalyze -i "C:\scripts\proc.sql" --format
Эта команда проанализирует и отформатирует указанный SQL-скрипт согласно установленным правилам.
📌 Подробнее о новых возможностях и инструкциях по установке читайте в официальной документации.
#sqlserver #tsql #dotnet #cli #devtools
https://github.com/ErikEJ/SqlServer.Rules/tree/master/tools/SqlAnalyzerCli#sql-formatting-preview
@sqlhub
👍6❤3🥰1
🧩 SQLite Internal — визуализатор структуры .sqlite-файлов
Если ты хочешь понять внутреннюю структуру SQLite, то этот инструмент — находка. SQLite Internal — веб-приложение для интерактивного анализа .sqlite-файлов.
📝 Что умеет:
• Загрузи .sqlite и изучай структуру файла
• Визуализация страниц, заголовков и схем
• Всё работает локально в браузере
💡 Технологии:
• TypeScript, Tailwind CSS, Vite
• GitHub — invisal/sqlite-internal
🧪 Попробуй онлайн: https://sqlite-internal.pages.dev
#SQLite #DevTools #WebApp
@sqlhub
Если ты хочешь понять внутреннюю структуру SQLite, то этот инструмент — находка. SQLite Internal — веб-приложение для интерактивного анализа .sqlite-файлов.
📝 Что умеет:
• Загрузи .sqlite и изучай структуру файла
• Визуализация страниц, заголовков и схем
• Всё работает локально в браузере
💡 Технологии:
• TypeScript, Tailwind CSS, Vite
• GitHub — invisal/sqlite-internal
🧪 Попробуй онлайн: https://sqlite-internal.pages.dev
#SQLite #DevTools #WebApp
@sqlhub
👍7❤2🔥2
🧠 SQL-задача с подвохом: "Невидимые дубликаты"
В таблице
🎯 Цель:
Найти количество уникальных пользователей, если:
- Регистр не учитывается (`alice` = `ALICE`)
- Пробелы игнорируются
- Для
— Убираются точки в имени
— Всё после
✅ SQL-решение:
🔍 Как это работает:
LOWER(TRIM(email)) — убираем пробелы и регистр
SPLIT_PART(..., '+', 1) — отрезаем всё после +
REGEXP_REPLACE(..., '\.', '', 'g') — удаляем точки
Считаем DISTINCT, чтобы получить число уникальных email'ов
🔥 Используй такие трюки для:
• антифрода
• чистки базы
• аналитики поведения пользователей
#SQL #PostgreSQL #Gmail #EmailNormalization #DevTools #AntiFraud #DataCleaning #Analytics
В таблице
users
хранятся email-адреса пользователей. Некоторые юзеры регистрируются повторно, маскируя один и тот же email по-разному:| id | name | email |
|----|----------|--------------------------|
| 1 | Alice | [email protected] |
| 2 | Bob | [email protected] |
| 3 | Charlie | [email protected] |
| 4 | Dave | [email protected] |
| 5 | Eve | [email protected] |
🎯 Цель:
Найти количество уникальных пользователей, если:
- Регистр не учитывается (`alice` = `ALICE`)
- Пробелы игнорируются
- Для
@gmail.com
: — Убираются точки в имени
— Всё после
+
отрезается✅ SQL-решение:
SELECT COUNT(DISTINCT normalized_email) AS unique_users
FROM (
SELECT
CASE
WHEN email ILIKE '%@gmail.com' THEN
REGEXP_REPLACE(
SPLIT_PART(SPLIT_PART(LOWER(TRIM(email)), '+', 1), '@', 1),
'\.', '', 'g'
) || '@gmail.com'
ELSE
LOWER(REPLACE(TRIM(email), ' ', ''))
END AS normalized_email
FROM users
) AS cleaned;
🔍 Как это работает:
LOWER(TRIM(email)) — убираем пробелы и регистр
SPLIT_PART(..., '+', 1) — отрезаем всё после +
REGEXP_REPLACE(..., '\.', '', 'g') — удаляем точки
Считаем DISTINCT, чтобы получить число уникальных email'ов
🔥 Используй такие трюки для:
• антифрода
• чистки базы
• аналитики поведения пользователей
#SQL #PostgreSQL #Gmail #EmailNormalization #DevTools #AntiFraud #DataCleaning #Analytics
👍9❤3