DBMS 中使用最广泛的 SQL 子句是什么?
SQL 是一种结构化查询语言,它是关系数据库的标准和使用最广泛的编程语言。它用于管理和组织各种系统中的数据,其中存在各种数据关系。
结构化查询语言 (SQL) 子句
SQL 子句分为三种类型,如下所示:
让我们逐一学习它们。
GROUP BY 子句
SQL GROUP BY 用于将相同的数据排列成组。它与 SQL SELECT 语句一起使用。GROUP BY 语句位于 SELECT 语句中的 WHERE 子句之后,ORDER BY 子句之前。它也与聚合函数一起使用。
语法如下:
SELECT column FROM table_name WHERE conditions GROUP BY column ORDER BY column
示例
下面是 Group By 子句用法的示例:
Create table product(pid number(10),company varchar2(20),qty number(10),rate number(10),cost number(10)); insert into product values(1,'LANCO', 20,450,4000); insert into product values(2,'METRO',30,400,3000); insert into product values(3,'Tata',40,350,4500); select * from product;
输出
您将获得以下输出:
1|LANCO|20|450|4000 2|METRO|30|400|3000 3|Tata|40|350|4500
您可以使用以下命令:
select company, count(*) from product group by company;
输出
您将获得以下输出:
LANCO|1 METRO|1 Tata|1
HAVING 子句
它用于搜索组或聚合的条件。它通常用于 Group by 子句中。如果我们不使用 group by 子句,那么我们可以像使用 where 子句一样使用 having 子句。
语法如下:
SELECT column1, column2 FROM table_name WHERE conditions GROUP BY column1, column2 HAVING conditions ORDER BY column1, column2;
示例
下面是 Having 子句用法的示例:
Create table product(pid number(10),company varchar2(20),qty number(10),rate number(10),cost number(10)); insert into product values(1,'LANCO', 20,450,4000); insert into product values(2,'METRO',30,400,3000); insert into product values(3,'Tata',40,350,4500); insert into product values(4,'Tata',30,250,5000); insert into product values(5,'METRO',22,400,4500); select * from product; SELECT company, COUNT(*) FROM product group by company having count(*)>1;
输出
您将获得以下输出:
1|LANCO|20|450|4000 2|METRO|30|400|3000 3|Tata|40|350|4500 4|Tata|30|250|5000 5|METRO|22|400|4500 METRO|2 Tata|2
ORDER BY 子句
此子句按升序或降序对结果进行排序。默认情况下,如果您不指定任何内容,它会执行升序排序。ASC 和 DESC 是用于对记录进行排序的关键字。
语法如下:
SELECT column1, column2 FROM table_name WHERE condition ORDER BY column1, column2... ASC|DESC;
按升序排序
使用以下命令按升序排序:
SELECT * FROM product ORDER BY company;
输出
您将获得以下输出:
1|LANCO|20|450|4000 2|METRO|30|400|3000 5|METRO|22|400|4500 3|Tata|40|350|4500 4|Tata|30|250|5000
按降序排序
使用以下命令按降序排序:
SELECT * FROM product ORDER BY company DESC;
输出
您将获得以下输出:
3|Tata|40|350|4500 4|Tata|30|250|5000 2|METRO|30|400|3000 5|METRO|22|400|4500 1|LANCO|20|450|4000
广告