Как изменить имя поля таблицы sql

В этом учебном пособии вы узнаете, как использовать оператор ALTER TABLE в SQL Server (Transact-SQL) для добавления столбца, изменения столбца, удаления столбца, переименования столбца или переименования таблицы с синтаксисом и примерами.

В этом учебном пособии вы узнаете, как использовать оператор ALTER TABLE в SQL Server (Transact-SQL) для добавления столбца, изменения столбца, удаления столбца, переименования столбца или переименования таблицы с синтаксисом и примерами.

Описание

Оператор ALTER TABLE SQL Server (Transact-SQL) используется для добавления, изменения или удаления столбцов в таблице.

Добавить столбец в таблицу.

Вы можете использовать оператор ALTER TABLE в SQL Server, чтобы добавить столбец в таблицу.

Синтаксис

Синтаксис добавления столбца в таблицу в SQL Server (Transact-SQL):

ALTER TABLE table_name
ADD column_name column-definition;

Пример

Рассмотрим пример, который показывает, как добавить столбец в таблицу SQL Server с помощью оператора ALTER TABLE.
Например:

ALTER TABLE employees

  ADD last_name VARCHAR(50);

Этот пример SQL Server ALTER TABLE добавит столбец в таблицу employees, с наименованием last_name.

Добавить несколько столбцов в таблицу

Вы можете использовать оператор ALTER TABLE в SQL Server для добавления нескольких столбцов в таблицу.

Синтаксис

Синтаксис добавления нескольких столбцов в существующую таблицу в SQL Server (Transact-SQL):

ALTER TABLE table_name
ADD column_1 column-definition,
column_2 column-definition,

column_n column_definition;

Пример

Рассмотрим пример, который показывает, как добавить несколько столбцов в таблицу в SQL Server с помощью оператора ALTER TABLE.
Например:

ALTER TABLE employees

  ADD last_name VARCHAR(50),

      first_name VARCHAR(40);

Этот пример SQL Server ALTER TABLE добавит в таблицу employees два столбца, поле last_name как VARCHAR (50) и поле first_name как VARCHAR (40).

Изменить столбец в таблице

Вы можете использовать оператор ALTER TABLE в SQL Server для изменения столбца в таблице.

Синтаксис

Синтаксис изменения столбца в существующей таблице в SQL Server (Transact-SQL):

ALTER TABLE table_name
ALTER COLUMN column_name column_type;

Пример

Рассмотрим пример, который показывает, как изменить столбец в таблице SQL Server с помощью оператора ALTER TABLE.
Например:

ALTER TABLE employees

  ALTER COLUMN last_name VARCHAR(75) NOT NULL;

Этот пример SQL Server ALTER TABLE изменит столбец с именем last_name как тип данных VARCHAR (75) и принудит столбец не допускать нулевые значения.

Удалить столбец из таблицы

Вы можете использовать оператор ALTER TABLE в SQL Server для удаления столбца из таблицы.

Синтаксис

Синтаксис удаления столбца в существующей таблице в SQL Server (Transact-SQL):

ALTER TABLE table_name
DROP COLUMN column_name;

Пример

Рассмотрим пример, показывающий, как удалить столбец из таблицы на SQL Server с помощью оператора ALTER TABLE.
Например:

ALTER TABLE employees

  DROP COLUMN last_name;

Этот пример SQL Server ALTER TABLE удалит столбец с именем last_name из таблицы, называемой employee.

Переименовать столбец в таблице

Вы не можете использовать оператор ALTER TABLE в SQL Server для переименования столбца в таблице. Тем не менее, вы можете использовать sp_rename, хотя Microsoft рекомендует удалять и воссоздавать таблицу, чтобы скрипты и хранимые процедуры не были нарушены.

Синтаксис

Синтаксис переименования столбца в существующей таблице в SQL Server (Transact-SQL):

sp_rename ‘table_name.old_column_name’, ‘new_column_name’, ‘COLUMN’;

Пример

Рассмотрим пример, который показывает, как переименовать столбец в таблице на SQL Server, используя sp_rename.
Например:

sp_rename ’employees.last_name’, ‘lname’, ‘COLUMN’;

Этот пример SQL Server будет использовать sp_rename для переименования столбца в таблице employee из last_name в lname.

Переименовать таблицу

Вы не можете использовать оператор ALTER TABLE в SQL Server для переименования таблицы. Тем не менее, вы можете использовать sp_rename, хотя Microsoft рекомендует удалять и воссоздавать таблицу, чтобы скрипты и хранимые процедуры не были нарушены.

Синтаксис

Синтаксис переименования таблицы в SQL Server (Transact-SQL):

sp_rename ‘old_table_name’, ‘new_table_name’;

Пример

Рассмотрим пример, который показывает, как переименовать таблицу в SQL Server с помощью sp_rename.
Например:

sp_rename ’employees’, ’emps’;

Этот пример SQL Server будет использовать sp_rename для переименования таблицы employee в emps.

Узнайте как использовать оператор ALTER TABLE в распространенных БД:

  • ALTER TABLE Oracle PL/SQL
  • ALTER TABLE MySQL
  • ALTER TABLE PostgreSQL
  • ALTER TABLE MariaDB
  • ALTER TABLE SQLite

I have two tables with one identical column name, but different data. I want to join the tables, but access both columns (row[«price»], row[«other_price»]): How can I rename/alias one of them in the select statement? (I do not want to rename them in the DB)

Dead account's user avatar

Dead account

19.4k13 gold badges52 silver badges81 bronze badges

asked Mar 5, 2009 at 10:24

akosch's user avatar

SELECT table1.price, table2.price AS 'other_price' ...

Younes's user avatar

Younes

4447 silver badges15 bronze badges

answered Mar 5, 2009 at 10:27

MrTelly's user avatar

MrTellyMrTelly

14.6k1 gold badge47 silver badges80 bronze badges

3

select t1.Column as Price, t2.Column as Other_Price
from table1 as t1 INNER JOIN table2 as t2 
ON t1.Key = t2.Key 

like this ?

answered Mar 5, 2009 at 10:28

Matt's user avatar

MattMatt

4,2421 gold badge27 silver badges29 bronze badges

us the AS keyword

select a.Price as PriceOne, b.price as PriceTwo 
from tablea a, tableb b

answered Mar 5, 2009 at 10:27

Dead account's user avatar

Dead accountDead account

19.4k13 gold badges52 silver badges81 bronze badges

If, like me, you are doing this for a column which then goes through COALESCE / array_to_json / ARRAY_AGG / row_to_json (PostgreSQL) and want to keep the capitals in the column name, double quote the column name, like so:

SELECT a.price AS "myFirstPrice", b.price AS "mySecondPrice"

Without the quotes (and when using those functions), my column names in camelCase would lose the capital letters.

answered Oct 9, 2018 at 17:57

Lucio Mollinedo's user avatar

Lucio MollinedoLucio Mollinedo

2,1151 gold badge28 silver badges27 bronze badges

if you are using sql server, use brackets or single quotes around alias name in a query you have in code.

answered Mar 5, 2009 at 10:41

Kunal S's user avatar

Kunal SKunal S

975 silver badges11 bronze badges

Also you may omit the AS keyword.

SELECT row1 Price, row2 'Other Price' FROM exampleDB.table1;
in this option readability is a bit degraded but you have desired result.

answered Nov 10, 2016 at 16:07

There is no need to use AS, just use:

SELECT table1.price Table1 Price, table2.price Table2 Price, .....

answered Mar 22, 2017 at 3:02

Moayad Hani Abu Rmilah's user avatar

Another option you can choose:

select price = table1.price , other_price = table2.price from .....

Reference:

In case you are curious about the performance or otherwise of aliasing a column using “=” versus “as”.

answered Sep 5, 2019 at 10:27

劉鎮瑲's user avatar

劉鎮瑲劉鎮瑲

4898 silver badges20 bronze badges

Microsoft SQL Server позволяет переименовывать столбцы в таблицах уже после создания этих таблиц, что в некоторых случаях бывает очень полезно, так как Вам не нужно пересоздавать всю таблицу целиком. В этой небольшой статье я расскажу Вам, как переименовать столбец в таблице в SQL севере на языке T-SQL.

Скриншот 1

В прошлой статье, посвящённой Microsoft SQL Server, а конкретно – «Изменение таблиц в Microsoft SQL Server или как добавить, удалить, изменить столбец в таблице?» я рассказывал, как на T-SQL изменить тип данных столбца, как добавить новый столбец или удалить существующий, но в той статье я упустил один очень важный момент, я не рассказал, как переименовать столбец в таблице. Поэтому продолжаем тему изменения таблиц в Microsoft SQL Server, и сегодня я расскажу, как переименовываются столбцы в таблицах.

Заметка! Начинающим рекомендую посмотреть мой видеокурс по T-SQL.

Содержание

  1. Переименование столбца таблицы в Microsoft SQL Server
  2. Системная хранимая процедура sp_rename
  3. Синтаксис sp_rename
  4. Пример переименования столбца в таблице с помощью процедуры sp_rename
  5. Видео-инструкция — Переименование столбца таблицы в Microsoft SQL Server

Переименовать столбец таблицы в Microsoft SQL Server можно как в графическом конструкторе SSMS, так и на языке T-SQL. Способ с использованием конструктора, я думаю, понятен, т.е. нужно просто открыть конструктор, указать новое имя столбца и сохранить изменения. Если Вы не знаете, как работать с конструктором, то прочитайте вышеупомянутую статью про изменение таблиц и принцип станет понятен. А вот способ с использованием языка T-SQL не так очевиден, ведь столбцы в таблицах переименовываются с помощью системной хранимой процедуры sp_rename.

Системная хранимая процедура sp_rename

sp_rename — системная хранимая процедура, которая позволяет изменять имя пользовательского объекта базы данных. Таким объектом может выступать таблица, индекс, столбец таблицы или псевдоним типа данных.

Синтаксис sp_rename

   
   sp_rename @objname, @newname, @objtype

где

  • @objname – Текущее имя объекта. В случае со столбцом это имя указывается в формате «таблица.столбец»;
  • @newname – Новое имя объекта;
  • @objtype – Тип объекта. В случае переименования таблиц параметр указывать не требуется. Может принимать следующие значения:
    • COLUMN – переименование столбцов;
    • INDEX – переименование индексов;
    • USERDATATYPE — переименование пользовательских типов данных;
    • DATABASE — переименование базы данных.

Примечание!

Курс по SQL для начинающих

Следует отметить, что изменить имя объекта можно только в текущей базе данных, в которой запущена процедура, изменять имена объектов, которые расположены в других базах, нельзя.

Также переименование таблицы или столбца не приведет к автоматическому переименованию ссылок на эту таблицу или столбец, т.е. необходимо вручную изменить любые объекты, которые ссылаются на переименованный объект.

Кроме того, для переименования объектов, конечно же, требуются соответствующие разрешения на изменения.

Заметка! Если Вас интересует SQL и T-SQL, рекомендую посмотреть мои видеокурсы по T-SQL, с помощью которых Вы «с нуля» научитесь работать с SQL и программировать с использованием языка T-SQL в Microsoft SQL Server.

Пример переименования столбца в таблице с помощью процедуры sp_rename

Для примера давайте переименуем столбец Price таблицы Goods на ProductPrice. Таблица расположена в базе данных TestDB. В качестве SQL сервера у меня выступает — Microsoft SQL Server 2017 Express.

   
   USE TestDB;  
   GO  

   SELECT * FROM Goods;

   GO

   EXEC sp_rename 'Goods.Price', 'ProductPrice', 'COLUMN';  

   GO

   SELECT * FROM Goods;

Скриншот 2

Как видите, столбец успешно переименован.

Видео-инструкция — Переименование столбца таблицы в Microsoft SQL Server

У меня на этом все, удачи Вам, пока!

На чтение 4 мин Просмотров 2.5к. Опубликовано 29.11.2021

MySQL — популярная система управления базами данных, которая составляет основу огромной части современного Интернета. MySQL — это СУБД с открытым исходным кодом (система управления реляционными базами данных), разработанная и поддерживаемая Oracle, с моделью клиент-сервер. Он предлагает безопасное хранилище базы данных, высокую производительность и мощные функции.

В этом руководстве будет показано, как переименовать столбец в MySQL.

Содержание

  1. Переименование столбца в MySQL
  2. Базовая структура
  3. Переименование столбца таблицы
  4. Переименование таблиц
  5. Переименование нескольких таблиц
  6. Заключение

Переименование столбца в MySQL

В MySQL база данных обычно состоит из нескольких таблиц, содержащих строки и столбцы, содержащие различные данные. Для демонстрации мы переименуем имя столбца конкретной таблицы.

Для демонстрации я буду использовать этот образец базы данных. Это очень большая база данных, которой должно хватить практически для любой тестовой ситуации. Для удобства я буду использовать phpMyAdmin для доступа к базе данных и выполнения запросов. Узнайте больше об установке и настройке phpMyAdmin и MySQL.

Узнайте больше об установке и настройке phpMyAdmin и MySQL

Базовая структура

Чтобы переименовать столбец, структура запроса будет выглядеть следующим образом.

ALTER TABLE <table_name> CHANGE <old_column_name> <new_column_name> <data_type>

Если нужно переименовать несколько столбцов, мы также можем сделать это в одном запросе. В таком случае структура запроса будет выглядеть так.

ALTER TABLE <table_name> CHANGE <old_column_name_1> <new_column_name_1> <data_type_1>, CHANGE <old_column_name_2> <new_column_name_2> <data_type_2>

В качестве альтернативы, если вы хотите переименовать таблицу, структура запроса будет выглядеть так.

RENAME TABLE <old_table_name> TO <new_table_name>

Вы также можете переименовать несколько таблиц за один раз.

RENAME TABLE <old_table_1> TO <new_table_name_1>, <old_table_name_2> TO <new_table_name_2>

MySQL также позволяет использовать RENAME между несколькими базами данных.

RENAME TABLE <current_database>.<table_name> TO <other_database>.<table_name>

Переименование столбца таблицы

Давайте посмотрим на пример таблицы базы данных стран.

SELECT * from countries;

Давайте посмотрим на пример таблицы базы данных

Из этой таблицы давайте переименуем country_name (varchar (40)) в country_label (varchar (40)). Запрос будет выглядеть примерно так.

ALTER TABLE countries CHANGE country_name country_label varchar(40);

Проверьте изменение.

SHOW COLUMNS FROM countries;

Переименование нескольких столбцов
В следующем примере мы будем переименовывать несколько столбцов в таблице стран. Изменение Давайте country_id к COUNTRY_CODE, country_label к COUNTRY_NAME и region_id в регионе-_code.

ALTER TABLE countries
CHANGE country_id country_code char(2),
CHANGE country_label country_name varchar(40),
CHANGE region_id region_code int;

Проверьте изменения.

SHOW COLUMNS FROM countries;

Изменение Давайте country_id

Переименование таблиц

Теперь попробуем переименовать таблицу. Мы переименуем таблицу » страны» в » независимые_регионы». Во-первых, обратите внимание на текущие имена таблиц.

Выполните следующий запрос, чтобы переименовать целевую таблицу.

RENAME TABLE countries TO independent_regions;

следующий запрос, чтобы переименовать

Проверьте изменение.

$ SHOW TAB

Переименование нескольких таблиц

Теперь давайте попробуем изменить имена нескольких таблиц одновременно. Запишите все текущие таблицы.

Затем выполните следующий запрос.

RENAME TABLE
countries TO independent_regions,
jobs TO assigned_tasks,
departments TO sections;

Проверьте изменения.

Заключение

Поздравляю! Вы успешно переименовали существующий столбец в MySQL. В этом руководстве также показано переименование существующей таблицы. Как для переименования столбцов, так и для таблиц вам необходимо понимать основы оператора ALTER TABLE.

Каждая таблица MySQL основана на ключевом дизайне. В терминологии MySQL это называется схемой. Он содержит необходимые данные о схеме размещения данных в таблице.

Вы создали свою базу данных и свои таблицы, и после всей этой работы вы заметили, что вам нужно добавить или переименовать столбец. Что ж, вы можете использовать для этого оператор ALTER TABLE.

Просто имейте в виду, что при этом нужно быть очень осторожным. Если в вашей таблице много строк, это может вызвать проблемы с производительностью вашей базы данных.

Примечание. Если приведенный здесь синтаксис не работает, обратитесь к документации по своей СУБД. Большинство вещей работает одинаково, но есть некоторые различия для различных СУБД.

Как добавить новую колонку с помощью ALTER TABLE 

Чтобы добавить новый столбец, вам сначала нужно выбрать таблицу с помощью ALTER TABLE имя_таблицы, а затем написать имя нового столбца и его тип данны вместе с операторомо ADD.  В совокупности код выглядит так:

ALTER TABLE table_name
ADD column_name datatype;

 Например у нас есть база данных пользователей, как показано ниже:

id name age state email
1 Paul 24 Michigan paul@example.com
2 Molly 22 New Jersey molly@example.com
3 Robert 19 New York robert@example.com

Настал момент, когда нам нужно сохранить номера документов, удостоверяющих личность наших пользователей, поэтому нам нужно добавить для этого новый столбец.

Чтобы добавить новый столбец в нашу таблицу пользователей, нам нужно выбрать таблицу с ALTER TABLE users, а затем указать имя нового столбца и его тип данных с помощью оператора ADD id_number TEXT. Все вместе выглядит так:

ALTER TABLE users
ADD id_number TEXT;

Таблица с новым столбцом будет выглядеть следующим образом:

id name age state email id_number
1 Paul 24 Michigan paul@example.com NULL
2 Molly 22 New Jersey molly@example.com NULL
3 Robert 19 New York robert@example.com NULL

Вам нужно будет использовать оператор UPDATE, чтобы добавить недостающую информацию для уже существующих пользователей, как только она будет предоставлена. 

Как создать новый столбец со значением по умолчанию вместо NULL

Вы также можете создать столбец со значением по умолчанию, используя ключевое слово default, за которым следует используемое значение. Тогда пользователи увидят это значение по умолчанию вместо того, чтобы пропущенные значения были заполнены NULL.

Предположим, что скоро у нас появятся международные пользователи, и мы хотим добавить столбец country. Все наши существующие пользователи из США, поэтому мы можем использовать это значение по умолчанию.

ALTER TABLE users
ADD country TEXT default "United States";

 Наша таблица будет выглядеть так: 

id name age state email id_number country
1 Paul 24 Michigan paul@example.com NULL United States
2 Molly 22 New Jersey molly@example.com NULL United States
3 Robert 19 New York robert@example.com NULL United States

Будьте осторожны при добавлении новых столбцов в таблицы.

Если в вашей таблице уже много строк — например, если у вас уже много пользователей или много хранимых данных, — добавление нового столбца может потребовать значительных ресурсов. Поэтому обращайтесь с этой операцией осторожно. 

Как переименовать столбец с помощью ALTER TABLE

Вы можете переименовать столбец с помощью приведенного ниже кода. Вы выбираете таблицу с помощью ALTER TABLE имя_таблицы, а затем указываете, какой столбец переименовать и во что переименовать, с помощью RENAME COLUMN old_name TO new_name

ALTER TABLE table_name
RENAME COLUMN old_name TO new_name;

 Давайте посмотрим на ту же таблицу, которую мы использовали в предыдущем примере:

id name age state email id_number country
1 Paul 24 Michigan paul@example.com NULL United States
2 Molly 22 New Jersey molly@example.com NULL United States
3 Robert 19 New York robert@example.com NULL United States

Чтобы избежать путаницы между столбцами id и id_number, давайте переименуем первый в user_id.

Сначала мы укажем  таблицу с помощью ALTER TABLE users, а затем объявим имя столбца, чтобы оно изменилось на то, что мы хотим изменить, с помощью RENAME COLUMN id TO user_id.

ALTER TABLE users
RENAME COLUMN id TO user_id;

После выполения запроса таблица будет выглядеть так: 

user_id name age state email id_number country
1 Paul 24 Michigan paul@example.com NULL United States
2 Molly 22 New Jersey molly@example.com NULL United States
3 Robert 19 New York robert@example.com NULL United States

Будьте осторожны при переименовании столбца в таблице.

Когда вы переименовываете столбцы с помощью ALTER TABLE, вы рискуете нарушить зависимости базы данных.

Если вы используете инструмент рефакторинга базы данных для изменения имени столбца вместо использования ALTER TABLE, он будет управлять всеми зависимостями и обновлять их с новым именем столбца.

Если у вас небольшая база данных, возможно, вам не о чем беспокоиться, но об этом важно помнить.

На уроке будет рассмотрена тема sql переименование столбца (полей) при помощи служебного слова AS; также рассмотрена тема агрегатные функции в sql. Будут разобраны конкретные примеры запросов

Содержание:

  • Переименование полей AS
  • Агрегатные функции в SQL
    • Предложение GROUP BY в SQL
    • Оператор Having SQL

Переименование полей AS

Имена столбцов в запросах можно переименовывать. Это придает результатам более читабельный вид.

В языке SQL переименование полей связано с использованием ключевого слова AS, которое и используется для переименования имен полей в результирующих наборах

Синтаксис:

SELECT <имя поля> AS <псевдоним> FROM

Рассмотрим пример переименования в SQL:

Пример БД «Институт»: Вывести фамилии учителей и их зарплаты, для тех преподавателей, у которых зарплата ниже 15000, переименовать поле zarplata на «низкая_зарплата»

✍ Решение:
 

1
2
3
SELECT name, zarplata AS низкая_зарплата
  FROM teachers
  WHERE zarplata<15000;

Результат:
sql переименование столбца

SQL As 2_1. БД Компьютерный магазин. Вывести данные о компьютерах. Переименовать столбец Скорость в «Мб», а столбец HD в «Гб»

Переименование столбцов в SQL часто необходимо при вычислении значений, связанных с несколькими полями таблицы. Рассмотрим пример:

Пример БД «Институт»: Из таблицы teachers вывести поле name и вычислить сумму зарплаты и премии, назвав поле «зарплата_премия»

✍ Решение:
 

1
2
SELECT name, (zarplata+premia) AS zarplata_premia 
  FROM teachers;

Результат:
sql переименование

SQL As 2_1. БД Институт. Вывести фамилии учителей и разницу между их зарплатой и премией. Назвать вывод «зарплата_минус_премия»

Задание 2_1. БД «Компьютерные курсы». Из таблицы Личные данные вывести значения полей Код студента, Word, Excel, Access и вычислить среднее значение по полям Word, Excel, Access, назвав поле «Среднее»

SQL As 2_2. БД Компьютерный магазин. Вывести объем оперативной памяти в Килобайтах (из Мб получить Кб). Выводить и исходное и получившееся значение

Задание 2_2. БД «Компьютерные курсы». Вывести номера телефонов и оценки по Word студентов, успеваемость по курсу Word которых ниже 4 баллов, переименовать поле Word на Низкая успеваемость

Для получения итоговых значений и вычисления выражений используются агрегатные функции в sql:

Функция Описание
COUNT(*) Возвращает количество строк таблицы.
COUNT(имя поля) Возвращает количество значений в указанном столбце.
SUM(имя поля) Возвращает сумму значений в указанном столбце.
AVG(имя поля) Возвращает среднее значение в указанном столбце.
MIN(имя поля) Возвращает минимальное значение в указанном столбце.
MAX(имя поля) Возвращает максимальное значение в указанном столбце.

Все агрегатные функции возвращают единственное значение.

Функции COUNT, MIN и MAX применимы к любым типам данных.

Функции SUM и AVG используются только для числовых полей.
Между функциями COUNT(*) и COUNT(<имя поля>) есть разница: вторая при подсчете не учитывает NULL-значения.

Важно: при работе с агрегатными функциями в SQL используется служебное слово AS

Пример БД «Институт»: Получить значение самой большой зарплаты среди учителей, вывести итог как «макс_зп»

✍ Решение:
 

SELECT MAX(zarplata) AS макс_зп
  FROM teachers;

Результаты:
агрегатные функции в sql

Рассмотрим более сложный пример использования агрегатных функций в sql.

Пример: БД Компьютерный магазин. Найти имеющееся в наличии количество компьютеров, выпущенных производителем Америка

✍ Решение:
 

1
2
3
4
5
6
7
8
SELECT COUNT( * ) 
FROM  `pc` 
WHERE  `Номер` 
IN (
  SELECT  `Номер` 
  FROM product
  WHERE Производитель =  "Америка"
)

sql запросы count

SQL As 2_3. БД Компьютерный магазин. Вывести общее количество продуктов, странами-производителями которых является Россия

Agr func 2_2. БД Институт. Вывести минимальную и максимальную зарплату учителей

Agr func 2_3. БД Институт. Выберите название курса, уроки по которому не проводились и не запланированы проводиться. Дополните код:

1
2
3
4
5
6
SELECT  `title` 
FROM  `courses` 
WHERE  `title` NOT 
IN (
   ...
)

Agr func 2_4. БД Институт. Измените предыдущее задание: Посчитайте количество тех курсов, уроки по которым не проводились и не запланированы проводиться. Выводите результат с именем «нет_уроков»

Предложение GROUP BY в SQL

Оператор group by в sql обычно используется совместно с агрегатными функциями.

Агрегатные функции выполняются над всеми результирующими строками запроса. Если запрос содержит оператор GROUP BY, каждый набор строк, заданных в предложении GROUP BY, составляет группу, и агрегатные функции выполняются для каждой группы отдельно.

Рассмотрим пример с таблицей lessons:
sql group by

Пример:

  1. Выдавать количество проведенных уроков учителем Иванов из таблицы lessons (порядковый номер Иванова 1 (tid)).
  2. SELECT COUNT(tid) AS Иванов 
    FROM lessons
    WHERE tid=1

    Результат:
    Оператор group by в sql

  3. Выдавать количество проведенных уроков учителем Иванов по разным курсам из таблицы lessons
  4. SELECT course, COUNT( tid ) AS Иванов
    FROM lessons
    WHERE tid =1
    GROUP BY course

    Результат:
    group by в sql

Важно: Таким образом, в результате использования GROUP BY все выходные строки запроса разделяются на группы, характеризуемые одинаковыми комбинациями значений в этих столбцах (т.е. агрегатные функции выполняются для каждой группы отдельно).

При этом стоит учесть, что при группировке по полю, содержащему NULL-значения, все такие записи попадут в одну группу.

SQL group by 2_5. БД Компьютерный магазин. Для различных типов принтеров определить их среднюю стоимость и количество (т.е. отдельно по лазерным, струйным и матричным). Использовать агрегатные функции AVG(поле) и COUNT(поле). Результат должен выглядеть так:

GROUP BY в SQL

SQL group by 2_5. БД Институт. Посчитать количество уроков, проведенных одним и тем же учителем. Результат должен выглядеть так:
sql group by пример

Задание 2_5. БД «Компьютерные курсы». Вывести количество человек в

каждой

группе и количество человек на

каждом

курсе из таблицы Список. Назвать вычисляемые поля «кол_во_в_гр» и «кол_во_на_курс»

Оператор Having SQL

Предложение HAVING в SQL необходимо для проверки значений, которые получены с помощью агрегатной функции после группировки (после использования GROUP BY). Такая проверка не может содержаться в предложении WHERE.

Пример: БД Компьютерный магазин. Посчитать среднюю цену компьютеров с одинаковой скоростью процессора. Выполнить подсчет только для тех групп, средняя цена которых меньше 30000.

✍ Решение:
 

SELECT AVG(`Цена`) ,`Скорость`
FROM  `pc` 
GROUP BY `Скорость` 
HAVING AVG(`Цена`) <30000

Результат:
sql having пример

Важно: В операторе Having нельзя использовать псевдоним (например, сред_цена), используемый для именования значений агрегатной функции.

Having SQL 2_6. БД Компьютерный магазин. Для различных типов принтеров определить их среднюю стоимость (т.е. отдельно по лазерным, струйным и матричным). Вести подсчет только если средняя стоимость <10000.

Результат:
Оператор Having SQL

Having SQL 2_6. БД Институт
Посчитать количество уроков, проведенных одним и тем же учителем. Выдавать значение только для тех учителей, у которых уроков больше двух.

Задание 2_6. БД «Компьютерные курсы». Получить количество учеников каждой группы при условии, что курс не меньше 3-го

It may often happen that, we see a requirement to change the name of the column in the database to serve their purpose. With the help of SQL or Structured Query Language, the Database Administrators store, update, manipulate and retrieve data in relational databases. So, in this article let us understand how to rename a column name in SQL.

SQL-Rename Column Name in SQL-EdurekaThe following topics will be covered in this article:

    1. What is SQL?
    2. What is RENAME command in SQL?
    3. Rename column name in MySQL, MariaDB, Oracle and PostgreSQL
    4. Rename column  name in MS SQL Server
    5. Rename table name  MySQL, MariaDB, Oracle

So let us get started then,

What is SQL?

SQL or most commonly known as SEQUEL is a Structured Query Language used for managing and accessing the databases. It is based on the English language and is designed in a way to easily retrieve, manipulate and access the data. If you wish to know more about the basics of SQL in-depth, you can refer to the article on SQL Basics. In SQL, there are various statements/ commands used to manipulate data. One such manipulation, which is quite popular in databases is renaming the column name in SQL. 

So, let us understand how to use the RENAME command in SQL.

What is RENAME command in SQL?

This command is used to change the name of a column to a new column name. It is also used to change the table to a new table name. Let us understand how to use this command in different databases. But, before that, let us consider the following table to understand all the examples:

BID BName Genre Price

1

Trick Mirror

Psychology 

200

2

Daisy Jones

Mystery

350

3

Lady in the lake

Mystery

250

4

Miracle Creek

Thriller

450

5

Disappearing Earth 

Drama

300

How to Rename column name in SQL?

Rename column name in MySQL, MariaDB, Oracle, and PostgreSQL

To rename a column name in MySQL, MariaDB, Oracle, and PostgreSQL, you can follow the below syntax:

Syntax

ALTER TABLE TableName
RENAME COLUMN OldColumnName TO NewColumnName;

Example:

Write a query to rename the column name “BID” to “BooksID”.

ALTER TABLE Books;
RENAME COLUMN BID TO BooksID;

On executing the above query, you will see the following output:

Output:

BooksID BName Genre Price

1

Trick Mirror

Psychology 

200

2

Daisy Jones

Mystery

350

3

Lady in the lake

Mystery

250

4

Miracle Creek

Thriller

450

5

Disappearing Earth 

Drama

300

You can also use the CHANGE keyword to rename a column name as follows:

Syntax

ALTER TABLE TableName
CHANGE COLUMN OldColumnName NewColumnName Data Type;

Example:

Write a query to rename the column name “BID” to “BooksID”.

ALTER TABLE Books;
CHANGE COLUMN BID BooksID INT;

On executing this query, you will see the output the same as the above output.

Rename column name in MS SQL Server

The process of renaming column name is MS SQL Server is different when compared to the other databases. In MS SQL Server, you have to use the stored procedure called sp_rename.

Syntax

sp_rename 'TableName.OldColumnName', 'New ColumnName', 'COLUMN';

Example:

Write a query to rename the column name “BID” to “BooksID”.

sp_rename 'Books.BID', 'BooksID', 'COLUMN';

The resulting output will be the same as that for the above queries. Now, that you have understood how to rename a column name in various databases, let us see how you can rename a table name.

Rename table name MySQL, MariaDB, Oracle

To rename a table name, you can use the RENAME command in SQL, in the following manner:

Syntax:

ALTER TABLE OldTableName
RENAME TO NewTableName;

Example:

ALTER TABLE Books
RENAME TO ListOfBooks;

Now, if you execute the below query to see the details in the table  ListOfBooks, you will see the following output:

Query:

SELECT * FROM ListOfBooks;
BooksID BName Genre Price

1

Tricky Mirror

Psychology 

200

2

Daisy Jones

Mystery

350

3

Lady in the lake

Mystery

250

4

Miracle Creek

Thriller

450

5

Disappearing Earth 

Drama

300

With that, we come to an end to this article on Rename column name in SQL. I hope you found this article informative. I hope you understood how to use the above commands. If you wish to learn more about MySQL and get to know this open-source relational database, then check out our MySQL DBA Certification Training which comes with instructor-led live training and real-life project experience. This training will help you understand MySQL in-depth and help you achieve mastery over the subject.

Got a question for us? Please mention it in the comments section of this article on “Rename column name in SQL” and I will get back to you.

Понравилась статья? Поделить с друзьями:
  • Как изменить имя пользователя фейсбук на телефоне
  • Как изменить имя пользователя убунту
  • Как изменить имя пользователя стим
  • Как изменить имя пользователя роблокс
  • Как изменить имя пользователя риот геймс