常用sql命令

select * from xiaowei;

--age的最大值,最小值

select MAX(age),MIN(age) from xiaowei;

--对表行数计数,对age计数(不包括null)

select count(*),count(age) from xiaowei;

--计算age的平均值(不包括null),age求和

select AVG(age),SUM(age) from xiaowei;

--此句的意思是将age值为null替换为0,0可以与其他int值一起计算平均值。因为有两个null被替换为0参与了平均值的计算,所以这里计算的平均值就跟之前不一样了

--mysql可以用isnull函数,pgsql只支持COALESCE;

select avg(isnull(age,0)) from xiaowei;

select avg(COALESCE(age,0)) from xiaowei;

--此句的意思是用age进行分组,展示对应的name,MySQL使用group_concat,pgsql不支持group_concat,可以用array_agg,返回的name是一个数组

select age,group_concat(name) from xiaowei group by age;

select age,array_agg(name) from xiaowei group by age ;

--给分组的内容加一个查询条件

select age,array_agg(name) from xiaowei where age = '15' group by age ;

--对name排序,并转为string,中间用空格分隔

select age,array_to_string(array_agg(name order by name), ' ') from xiaowei group by age;

--对age进行去重

select distinct age from xiaowei;

select age,array_agg(name) from xiaowei group by age ;

--对id和name两列都一致的数据进行去重

select distinct id,name from xiaowei;

--存储过程

CREATE OR REPLACE PROCEDURE get_employees_by_department(

department_name text,

OUT employee_name text,

OUT employee_salary numeric

)

LANGUAGE plpgsql

AS $$

BEGIN

SELECT name, salary INTO employee_name, employee_salary FROM employees WHERE department = department_name;

END;

; CREATE PROCEDURE AddOrder(CustomerID INT) AS BEGIN INSERT INTO Orders (CustomerID, ProductID, Quantity, OrderDate, Status) VALUES (@CustomerID, @ProductID, @Quantity, GETDATE(), 'Pending') END CREATE PROCEDURE AddOrder @CustomerID INT, @ProductID INT, @Quantity INT AS BEGIN INSERT INTO Orders (CustomerID, ProductID, Quantity, OrderDate, Status) VALUES (@CustomerID, @ProductID, @Quantity, GETDATE(), 'Pending') END

相关推荐
weixin_421922692 分钟前
使用Python进行图像识别:CNN卷积神经网络实战
jvm·数据库·python
2301_776508728 分钟前
用Python和Twilio构建短信通知系统
jvm·数据库·python
LaughingZhu9 分钟前
Product Hunt 每日热榜 | 2026-03-22
大数据·数据库·人工智能·经验分享·搜索引擎
@insist12310 分钟前
数据库系统工程师-数据库权限管理与触发器编程:软考核心考点与实战指南
数据库·oracle·软考·数据库系统工程师·软件水平考试
2301_7938046916 分钟前
深入理解Python的if __name__ == ‘__main__‘
jvm·数据库·python
勇者无畏40418 分钟前
基于 Spring AI Alibaba 搭建 Text-To-SQL 智能系统(简单实现)
数据库·sql
2401_8331977318 分钟前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
暮冬-  Gentle°23 分钟前
用Python批量处理Excel和CSV文件
jvm·数据库·python
2401_8916558124 分钟前
MySQL安全加固十大硬核操作技术大纲
数据库·mysql·安全
hongtianzai25 分钟前
Laravel9.X核心特性全解析
android·java·数据库