Змініть формати дати за допомогою редактора Power Query
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Як програміст або аналітик даних, ви часто будете працювати з великими обсягами даних. Одним із найпотужніших інструментів у вашому розпорядженні є SQL (мова структурованих запитів).
Ця шпаргалка SQL містить найпоширеніші об’єкти та команди SQL, включаючи типи даних, оператори DML і DDL, агрегатні функції, функції рядків і дат, а також підзапити.
Його створено як швидку та зручну довідку, до якої можна звернутися, коли ви взаємодієте з реляційною базою даних.
Якщо ви схожі на нас і хочете завантажити та роздрукувати чи зберегти шпаргалку на своєму комп’ютері, ви можете завантажити її нижче.
Зміст
Типи даних SQL
Типи даних для конкретних систем керування базами даних (СУБД) можуть відрізнятися (наприклад, Microsoft SQL Server проти MySQL ). Однак є кілька, які можна знайти в більшості систем. Ви можете розділити їх на три категорії:
Числовий
Дата і час
Рядок
1. Числові типи
Ось найпоширеніші числові типи:
ЦІЛЕ ЧИСЛО : ціле число без коми.
SMALLINT : менший діапазон цілих чисел
BIGINT : більший діапазон цілих чисел.
DECIMAL(p, s) або NUMERIC(p, s) : наприклад, decimal(5,2) буде відповідати 123,45.
REAL : Число з плаваючою комою з точністю не менше 6 десяткових цифр.
FLOAT(n) : Число з плаваючою комою з точністю принаймні n цифр.
2. Типи дати та часу
ДАТА : значення дати, зазвичай у форматі «РРРР-ММ-ДД».
ЧАС : значення часу, зазвичай у форматі «ГГ:ХХ:СС».
DATETIME або TIMESTAMP : комбінація значень дати й часу.
3. Типи рядків
CHAR(n) : Рядок фіксованої довжини з n символів.
VARCHAR(n) або CHARACTER VARYING(n) : рядок змінної довжини.
ТЕКСТ : Рядок змінної довжини з максимальною довжиною, визначеною СУБД.
Оператор SELECT
Оператор SELECT використовується для отримання даних з однієї або кількох таблиць. Ви можете вказати стовпці, які потрібно отримати, і з якої таблиці. Базовий оператор SELECT виглядає так:
SELECT column1, column2
FROM table;
Щоб отримати всі записи зі стовпців "name" та "country_id" із таблиці "city", ваш SQL-запит виглядає так:
SELECT name, country_id
FROM city;
Речення WHERE
Речення WHERE дозволяє фільтрувати результати оператора SELECT на основі конкретних умов.
SELECT column1, column2
FROM table
WHERE condition;
Щоб отримати записи з таблиці «місто», де «населення» перевищує 1 000 000, ваш запит виглядає так:
SELECT name, population
FROM city
WHERE population > 1000000;
ORDER BY пункт
Речення ORDER BY дозволяє сортувати результати оператора SELECT за одним або кількома стовпцями. Ви можете відсортувати результати в порядку зростання (ASC) або спадання (DESC):
SELECT column1, column2
FROM table
ORDER BY column1 ASC, column2 DESC;
Наприклад, щоб отримати записи з таблиці «місто», відсортовані за «населенням» у порядку спадання, ваш запит виглядає так:
SELECT name, population
FROM city
ORDER BY population DESC;
Об’єднання кількох таблиць у SQL
У SQL існує чотири найпоширеніші об’єднання:
ВНУТРІШНЄ З'ЄДНАННЯ
ЛІВОГО ПРИЄДНАННЯ
ПРАВО ПРИЄДНУЙТЕСЯ
ПОВНЕ ПРИЄДНАННЯ
1. ВНУТРІШНЄ З'ЄДНАННЯ
INNER JOIN отримує записи, які мають відповідні значення в обох таблицях.
Давайте візьмемо приклад бази даних виконавців і альбомів, і ви хочете знайти всі комбінації виконавців і альбомів. Це INNER JOIN:
SELECT *
FROM artists AS a
INNER JOIN albums AS b
ON a.artist_id = b.artist_id;
За допомогою INNER JOIN у результатах буде повернуто лише рядки з відповідними значеннями в указаних полях.
2. ЛІВОГО ПРИЄДНАННЯ
LEFT JOIN також відомий як LEFT OUTER JOIN. Він повертає всі записи з лівої таблиці та відповідні записи з правої таблиці. Якщо в правильній таблиці немає відповідності, результат міститиме значення NULL.
Наприклад, щоб отримати список усіх виконавців і їхніх відповідних альбомів (якщо вони є), ви можете використати LEFT JOIN:
SELECT *
FROM artists AS a
LEFT JOIN albums AS b
ON a.artist_id = b.artist_id;
Цей запит поверне всіх виконавців, навіть якщо вони не мають пов’язаних із ними альбомів у таблиці альбомів.
3. ПРАВО ПРИЄДНАТИСЯ
RIGHT JOIN також відомий як RIGHT OUTER JOIN. Він повертає всі записи з правої таблиці та відповідні записи з лівої таблиці. Якщо в лівій таблиці немає відповідності, результат міститиме значення NULL.
Наприклад, щоб отримати інформацію про всі альбоми та пов’язаних із ними виконавців (якщо вони існують), ви повинні використати RIGHT JOIN:
SELECT *
FROM artists AS a
RIGHT JOIN albums AS b
ON a.artist_id = b.artist_id;
Цей запит поверне всі альбоми, навіть якщо вони не мають пов’язаних виконавців у таблиці виконавців.
4. ПОВНЕ ПРИЄДНАННЯ
FULL JOIN також відомий як FULL OUTER JOIN. Він об’єднує результати ЛІВОГО та ПРАВОГО об’єднань. Іншими словами, він повертає всі рядки з лівої та правої таблиць і заповнює відсутні значення значеннями NULL, якщо немає відповідності.
Ось приклад використання таблиць виконавців і альбомів:
SELECT *
FROM artists AS a
FULL JOIN albums AS b
ON a.artist_id = b.artist_id;
Цей запит повертає всі рядки з обох таблиць, заповнюючи NULL, якщо в жодній з таблиць немає відповідності.
Агрегатні функції SQL
Агрегатні функції використовуються для обчислення одного результату з набору вхідних значень. Їх називають «агрегатними», тому що вони приймають кілька вхідних даних і повертають один вихід. Найпоширенішими є:
РАХУВАТИ
SUM
СЕР
МАКС
ХВ
1. Функція COUNT
Функція COUNT дозволяє підрахувати кількість рядків у результаті запиту. Ви можете використовувати цю агрегатну функцію, щоб визначити загальну кількість записів у таблиці або кількість записів, які відповідають певним критеріям.
Ось приклад:
SELECT COUNT(*) FROM employees;
Цей запит поверне загальну кількість співробітників у таблиці 'employees'. Майте на увазі, що додавання пропозиції WHERE може покращити ваші результати:
SELECT COUNT(*) FROM employees WHERE department = 'HR';
2. Функція SUM
Функція SUM обчислює загальну суму числового стовпця. Це корисно, коли потрібно обчислити загальне значення певного числового поля. Наприклад, цей запит повертає загальну суму зарплат усіх працівників:
SELECT SUM(salary) FROM employees;
3. Функція AVG
Функція AVG обчислює середнє значення числового стовпця. Ця функція корисна, коли потрібно знайти середнє значення певного числового поля. Наприклад, цей запит повертає середню зарплату всіх працівників:
SELECT AVG(salary) FROM employees;
4. Функція MAX
Функція MAX знаходить максимальне значення стовпця. Це часто використовується для пошуку найбільшого значення в числовому полі або останньої дати в полі дати й часу. Наприклад, цей запит повертає найвищу зарплату:
SELECT MAX(salary) FROM employees;
5. Функція MIN
Нарешті, функція MIN допомагає знайти мінімальне значення стовпця. Наприклад, цей запит повертає найнижчу зарплату:
SELECT MIN(salary) FROM employees;
Пам’ятайте, що ви можете використовувати пропозиції WHERE у цих запитах і JOIN з кількома таблицями.
Загальні рядкові функції
Ось найпоширеніші рядкові функції, які можна знайти в більшості діалектів SQL (точний синтаксис може відрізнятися):
LEN або LENGTH(рядок) : повертає довжину рядка.
UPPER(рядок) : перетворює рядок у верхній регістр.
LOWER(рядок) : перетворює рядок на нижній регістр.
SUBSTR або SUBSTRING(рядок, початок, довжина) : витягує частину з рядка.
TRIM(рядок) : видаляє пробіли на початку та в кінці рядка.
LTRIM(рядок) : видаляє пробіли на початку рядка.
RTRIM(рядок) : видаляє пробіли в кінці рядка.
Загальні числові функції
Ось найпоширеніші числові функції, які можна знайти в більшості діалектів SQL (точний синтаксис може відрізнятися):
ABS(число) : повертає абсолютне значення числа.
ROUND(число, десяткові_розряди) : Округлює число до певної кількості десяткових знаків.
FLOOR(число) : Округлює число до найближчого цілого.
CEIL або CEILING(число) : округлює число до найближчого цілого.
RAND() : повертає випадкове значення з плаваючою точкою від 0 до 1.
MOD(n, m) : повертає залишок n, поділеного на m.
POWER(основа, експонента) : Підносить число до степеня іншого числа.
LOG(число) : повертає натуральний логарифм числа.
Загальні функції дати
Here are the most common date functions that are found in most SQL dialects (the exact syntax can vary):
NOW(): Returns the current date and time.
DATE(datetime): Extracts the date part of a date or datetime expression.
TIME(datetime): Extracts the time part of a date or datetime expression.
YEAR(date): Returns the year part.
MONTH(date): Returns the month part.
DAY(date): Returns the day of the month part.
HOUR(time): Returns the hour part from a time.
MINUTE(time): Returns the minute part from a time.
SECOND(time): Returns the second part from a time.
GROUP BY And HAVING
When working with SQL queries, you may want to further summarize and filter your aggregated data. The GROUP BY and HAVING clauses provide this functionality.
1. Group By Clause
The GROUP BY clause allows you to group rows that share the same values in specified columns. It is commonly used with aggregate functions. This is the syntax:
SELECT column1, column2, aggregate_function(column3)
FROM table_name
WHERE condition
GROUP BY column1, column2;
For example, if you want to calculate the total sales amount for each product category, this is the query:
SELECT product_category, SUM(sales_amount)
FROM sales_data
GROUP BY product_category;
TIP: Combining GROUP BY and COUNT is a good way of finding duplicate values.
2. Having Clause
If you want to filter the aggregated results further, you can use the HAVING clause. The syntax is:
SELECT column1, column2, aggregate_function(column3)
FROM table_name
WHERE condition
GROUP BY column1, column2
HAVING condition;
If you want to find product categories with total sales of more than $1,000,000, you would write:
SELECT product_category, SUM(sales_amount)
FROM sales_data
GROUP BY product_category
HAVING SUM(sales_amount) > 1000000;
Quick Tips
Always use the GROUP BY clause before the HAVING clause.
The SELECT statement can only contain specified column names, aggregate functions, constants, and expressions.
When using the HAVING clause, filter conditions should be applied to the aggregate functions rather than directly to the grouped columns.
By understanding and properly applying the GROUP BY and HAVING clauses, you can better organize and analyze your data using SQL.
Subqueries
A subquery is also known as an inner or nested query. This is a query embedded within another SQL statement (such as a SELECT statement) or even inside another subquery.
Subqueries allow you to retrieve data based on the output of another query. The most common operators used with subqueries are:
IN
EXISTS
ANY
ALL
1. IN Operator
The IN operator tests if a value is within a set of values generated by the inner query. The syntax for using the IN operator with a subquery is as follows:
SELECT column_name(s)
FROM table_name
WHERE column_name IN (SELECT column_name FROM other_table);
This returns rows from the outer query where the specified column value matches any of the values provided by the subquery.
Suppose you have an employee table and a departments table. You want to find employees who work in departments based at the head office. Here is a sample query
SELECT first_name, last_name
FROM employee
WHERE department IN (SELECT department FROM departments
WHERE location = "HQ");
For a more in-depth look, check out our article on the syntax.
2. EXISTS Operator
The EXISTS operator checks if there is at least one row resulting from the subquery. You can use the EXISTS operator to filter rows based on the existence of related data in another table. This is the syntax:
SELECT column_name(s)
FROM table_name
WHERE EXISTS (SELECT column_name FROM other_table WHERE condition);
When the subquery returns at least one row, the EXISTS operator returns true, and the relevant rows from the outer query are included in the result.
3. ANY Operator
The ANY operator is used to compare a value to any value in a set of values provided by a subquery. It’s commonly used with comparison operators like =, <, >, <=, or >=.
This is the syntax:
SELECT column_name(s)
FROM table_name
WHERE column_name operator ANY (SELECT column_name FROM other_table WHERE condition);
This will return rows from the outer query where the specified column value meets the condition against any value from the subquery.
4. ALL Operator
The ALL operator compares a value to all values within a set of values provided by a subquery. The conditions must be true for every value in the subquery’s result. This is the syntax:
SELECT column_name(s)
FROM table_name
WHERE column_name operator ALL (SELECT column_name FROM other_table WHERE condition);
This returns rows from the outer query only if the specified column value satisfies the condition against all values in the subquery’s output.
Data Manipulation (DML)
Data Manipulation Language (DML) is a sub-language within SQL for managing and updating data. The most common statements are:
INSERT
UPDATE
DELETE
1. INSERT Statement
The INSERT statement allows you to insert rows into a table. Here’s the basic syntax:
INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
For example, if you want to insert a new row into a ‘users’ table with columns ‘id’, ‘name’, and ’email’, you would use the following query:
INSERT INTO users (id, name, email)
VALUES (1, 'John Doe', '[email protected]');
2. UPDATE Statement
The UPDATE statement allows you to modify existing row data in a table. This is the syntax:
UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
For example, if you want to update the email address of a user with the id ‘1’ in the ‘users’ table, your query would look like this:
UPDATE users
SET email = '[email protected]'
WHERE id = 1;
TIP: remember to include a WHERE clause to avoid updating all rows in the table by mistake.
3. DELETE Statement
The DELETE statement allows you to remove rows from a table. Here’s the syntax:
DELETE FROM table_name
WHERE condition;
Наприклад, якщо ви хочете видалити користувача з ідентифікатором «1» із таблиці «користувачі», ваш запит виглядатиме так:
DELETE FROM users
WHERE id = 1;
ПОРАДА : завжди включайте пропозицію WHERE, щоб указати, які рядки потрібно видалити, і уникнути видалення всіх рядків у таблиці.
Керування базами даних за допомогою DDL
Мова визначення даних (DDL) — це підмова SQL, яка використовується для створення та зміни таблиць і самої бази даних. Найпоширеніші оператори DDL:
СТВОРИТИ
ЗМІНИТИ
КРАПЛЯ
1. Інструкція CREATE
Оператор CREATE дозволяє створювати нові об’єкти бази даних, наприклад нові таблиці, представлення чи індекси. Під час створення нової таблиці вам потрібно визначити стовпці, їхні типи даних і будь-які обмеження.
Ось приклад створення таблиці замовлень:
CREATE TABLE orders (
id INTEGER PRIMARY KEY,
product VARCHAR(255) NOT NULL,
customer_id INT NOT NULL
);
ПОРАДА: виберіть відповідні типи даних і обмеження, щоб забезпечити цілісність даних у своїх таблицях.
Для більш детального ознайомлення перегляньте нашу статтю на .
2. Оператор ALTER
Оператор ALTER допомагає змінювати існуючі об’єкти бази даних. Загальні способи використання включають:
додавання, змінення або видалення стовпців.
додавання або видалення обмежень з існуючої таблиці.
додавання первинних і зовнішніх ключів.
ДОДАТИ НОВУ КОЛОНКУ
ALTER TABLE users ADD COLUMN age INTEGER;
Змінити тип даних стовпця
ALTER TABLE users ALTER COLUMN age TYPE FLOAT;
Опустіть стовпець
ALTER TABLE users DROP COLUMN age;
Додайте унікальне обмеження
ALTER TABLE users ADD CONSTRAINT users_email_unique UNIQUE(email);
Додайте зовнішній ключ між таблицями
ALTER TABLE users ADD FOREIGN KEY (country_id) REFERENCES Country(country_id);
3. Інструкція DROP
Інструкція DROP дозволяє видаляти об’єкти бази даних, такі як таблиці, представлення чи індекси. Використовуйте його з обережністю, оскільки це остаточно видалить вказаний об’єкт і всі його дані.
Ось приклад:
DROP TABLE users;
ПОРАДА : перед виконанням оператора DROP переконайтеся, що у вас є належні резервні копії.
Якщо ви хочете дізнатися більше про моделювання даних, перегляньте це відео:
транзакції
Транзакції відіграють вирішальну роль у підтримці цілісності бази даних , особливо коли кілька пов’язаних операцій виконуються одночасно. Є три основні операції в обробці транзакцій:
ПОЧАТИ
КОМІТ
ВІДКОТ
1. ПОЧАТИ
Оператор BEGIN означає початок транзакції. Виконуючи цю команду, ви встановлюєте відправну точку для свого набору операторів SQL.
BEGIN;
2. КОМІТ
Щоб завершити зміни та зберегти їх у базі даних, скористайтеся оператором COMMIT. Це гарантує, що всі операції в рамках транзакції виконуються успішно та постійно.
COMMIT;
Ось приклад повної транзакції з використанням класичного прикладу переказу коштів між рахунками:
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;
3. ВІДКОТ
Під час роботи з транзакціями також важливо знати, як скасувати зміни, коли сталася помилка. Оператор ROLLBACK скасовує всі зміни, зроблені з початку транзакції:
ROLLBACK;
Ось приклад транзакції з обробкою помилок за допомогою ROLLBACK:
BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
IF @@ERROR <> 0
ROLLBACK;
ELSE
COMMIT;
Заключні думки
Як ви бачили в цій шпаргалці SQL, SQL пропонує безліч команд і функцій, які дозволяють створювати, обробляти та запитувати дані в реляційній базі даних.
Від основних команд, таких як SELECT, INSERT, UPDATE і DELETE, до більш складних конструкцій, таких як JOIN і підзапити, до сукупних функцій, які ми розглянули, SQL забезпечує гнучкість для обробки широкого спектру завдань з даними.
Продовжуйте повертатися до цієї шпаргалки, щоб пришвидшити !
У цьому посібнику ви дізнаєтеся, як перетворити текст у формат дати за допомогою редактора Power Query в LuckyTemplates.
Дізнайтеся, як об’єднати файли з кількох папок у мережі, робочому столі, OneDrive або SharePoint за допомогою Power Query.
Цей підручник пояснює, як обчислити місячне ковзне середнє на базі даних з початку року за допомогою функцій AVERAGEX, TOTALYTD та FILTER у LuckyTemplates.
Дізнайтеся, чому важлива спеціальна таблиця дат у LuckyTemplates, і вивчіть найшвидший і найефективніший спосіб це зробити.
У цьому короткому посібнику розповідається про функцію мобільних звітів LuckyTemplates. Я збираюся показати вам, як ви можете ефективно створювати звіти для мобільних пристроїв.
У цій презентації LuckyTemplates ми розглянемо звіти, що демонструють професійну аналітику послуг від фірми, яка має кілька контрактів і залучених клієнтів.
Ознайомтеся з основними оновленнями для Power Apps і Power Automate, а також їх перевагами та наслідками для Microsoft Power Platform.
Відкрийте для себе деякі поширені функції SQL, які ми можемо використовувати, наприклад String, Date і деякі розширені функції для обробки та маніпулювання даними.
У цьому підручнику ви дізнаєтеся, як створити свій ідеальний шаблон LuckyTemplates, налаштований відповідно до ваших потреб і вподобань.
У цьому блозі ми продемонструємо, як шарувати параметри поля з малими кратними, щоб створити неймовірно корисну інформацію та візуальні ефекти.