Разлика между клауза "къде" и "имане" в SQL

Съдържание:

Разлика между клауза "къде" и "имане" в SQL
Разлика между клауза "къде" и "имане" в SQL

Видео: Разлика между клауза "къде" и "имане" в SQL

Видео: Разлика между клауза
Видео: Росен Желязков към Свиленски: Къде с тази книжцица под мишница? 2024, Юли
Anonim

Ключова разлика – къде срещу наличието на клауза в SQL

Данните са важни за всяка организация. Следователно е необходимо данните да се съхраняват по организиран начин, за да се извличат. Данните се съхраняват в таблици. Базата данни се състои от колекция от таблици. Един общ тип база данни са релационните бази данни. В релационна база данни таблиците са свързани една с друга. Например клиентът на масата е свързан с масата за поръчки. Система за управление на релационна база данни (RDBMS) е система за управление на база данни, която се основава на релационен модел. Използва се за управление на релационни бази данни. Някои примери за RDBMS са MySQL, MSSQL и Oracle. Езикът за структурирани заявки (SQL) е езикът, използван за манипулиране и извличане на данни в релационна база данни. В SQL има различни клаузи за изпълнение на различни задачи. Две от тях са къде и имащи. Тази статия обсъжда разликата между клауза where и клауза за наличие в SQL. Ключовата разлика между клаузата where и having в SQL е, че клаузата where се използва за филтриране на записи преди групиране или агрегиране, докато клаузата having се използва за филтриране на записи след групиране или агрегиране.

Каква е клаузата where в SQL?

Помага за извличане, актуализиране или изтриване на определен набор от данни от таблицата според даденото условие. Програмистът може да използва клауза where, за да ограничи и извлече само необходимите данни. Заявката се изпълнява само върху записите, където условието, посочено от клаузата where, е вярно. Може да се използва с избор, актуализиране и изтриване.

Вижте таблицата на учениците по-долу,

Разлика между клауза where и having в SQL_Figure 02
Разлика между клауза where и having в SQL_Figure 02
Разлика между клауза where и having в SQL_Figure 02
Разлика между клауза where и having в SQL_Figure 02

За да изберете името и възрастта на ученика, чийто student_id е равен на 3, може да се използва следната SQL заявка.

изберете име, възраст от ученик, където student_id=3;

Възможно е също да използвате оператори като не е равно на (!=), по-голямо от (>), по-малко от (=), по-малко или равно на (<=). За да изберете student_id и име, чиято възраст не е равна на 15, може да се използва следната SQL заявка.

изберете student_id, име от възрастта на ученика!=15;

За да промените възрастта на ученика от 2 до 13 години, може да се използва следната заявка.

актуализиране на зададена възраст на ученик=13, където id=3;

За да изтриете запис, чийто student_id е 4, може да се използва следната заявка.

изтриване от студент, където student_id=4;

Операторите and, or могат да се използват за комбиниране на множество условия.

изберете име от ученик, където student_id=1 и възраст=15; заявката ще извлече името Ann.

Това са някои примери за клауза where в SQL. Ако има клауза Group By, клаузата where се появява преди нея.

Какво е клауза за притежаване в SQL?

Има функции, предоставени от езика SQL за лесно извършване на изчисления. Те са известни като агрегиращи функции. Min () се използва за намиране на най-малката стойност на избраната колона. Max () се използва за намиране на максималната стойност на избраната колона. avg () се използва за намиране на средната стойност в колоната, а sum () се използва за намиране на общата стойност на колоната. Това са някои примери за агрегиращи функции. Вижте таблицата за поръчки по-долу,

Разлика между клауза where и having в SQL_Figure 03
Разлика между клауза where и having в SQL_Figure 03
Разлика между клауза where и having в SQL_Figure 03
Разлика между клауза where и having в SQL_Figure 03

Програмистът може да напише SQL заявката, както следва, за да извлече клиентите, чийто баланс е повече от 2000.

изберетеот група поръчки по клиент със сума (салдо) > 2000.

Това ще отпечата записите на клиентите, чиято сума на баланса е по-голяма от 2000. Ще отпечата записите на клиентите Ан и Алекс.

Клаузата за притежаване се използва за извличане на стойностите за групите, които отговарят на определени условия. Следователно групата, която попада в даденото условие, ще се появи като резултат от това. Клаузата за притежаване се появява след клаузата за групиране. Ако клаузата за групиране не е налице, тогава клаузата за имане ще работи подобно на клаузата where.

Какви са приликите между клауза where и having в SQL?

  • И двете са клаузи в езика за структурирани заявки.
  • И двете могат да се използват за филтриране и извличане на набор от данни.

Каква е разликата между клаузата where и клаузата за наличие в SQL?

където срещу наличието на клауза в SQL

Където е SQL клауза, която се използва за указване на условие при извличане на данните от една таблица или чрез обединяване с множество таблици. Имането е SQL клауза, която указва, че SQL команда за избор трябва да връща само редове, където сборните стойности отговарят на посочените условия.
Предназначение
Клаузата where се използва за филтриране на редове. Клаузата за притежаване се използва за филтриране на групи.
Агрегация
Клаузата where не може да се използва с функции за агрегиране, освен ако не е в подзаявка, съдържаща се в клауза Having. Функциите за агрегиране могат да се използват с клаузата за наличие.
Метод на филтриране
Клаузата where се държи като предварителен филтър. Клаузата за притежаване се държи като пост филтър.
Групиране по ред на клаузите
Клаузата where се използва преди клаузата Group By. Клаузата за притежаване се използва след клаузата Групиране по.
Използван с
Клаузата where може да се използва с select, update и delete. Клаузата за притежаване се използва само с select.

Резюме – където срещу наличието на клауза в SQL

Езикът за структурирани заявки (SQL) е езикът, използван в релационни бази данни. Където имаме две клаузи в SQL. Тази статия обсъди разликата между клауза where и have. Разликата между клаузата where и having в SQL е, че where се използва за филтриране на записи преди групиране или агрегиране, докато Having се използва за филтриране на записи след групиране или агрегиране.

Препоръчано: