You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用SQL存储过程查询跟踪表中5个最受关注的库存商品?

如何用SQL存储过程列出Top5最受关注的商品

示例跟踪表结构及数据

IDKullaniciIDStokKoduTarih
11AXERA2023-02-01 15:10:53.193
21ERKMF2023-02-02 10:27:17.373
32AXERA2023-02-02 10:27:16.643
43AXERA2023-02-06 16:27:28.873

基础SQL查询(获取Top5商品)

核心逻辑是按StokKodu分组统计访问次数,再按次数降序排序取前5条。不同SQL方言的写法略有差异:

SQL Server 版本

SELECT TOP 5
    StokKodu,
    COUNT(*) AS IzlenmeSayisi -- 访问次数
FROM
    TakipTablonuz -- 替换为你的跟踪表名
GROUP BY
    StokKodu
ORDER BY
    IzlenmeSayisi DESC;

MySQL 版本

SELECT
    StokKodu,
    COUNT(*) AS IzlenmeSayisi
FROM
    TakipTablonuz
GROUP BY
    StokKodu
ORDER BY
    IzlenmeSayisi DESC
LIMIT 5;

Oracle 版本

SELECT
    StokKodu,
    COUNT(*) AS IzlenmeSayisi
FROM
    TakipTablonuz
GROUP BY
    StokKodu
ORDER BY
    IzlenmeSayisi DESC
FETCH FIRST 5 ROWS ONLY;

封装为存储过程

将上述逻辑封装成可复用的存储过程:

SQL Server 存储过程

CREATE PROCEDURE GetTop5EnCokIzlenenUrunler
AS
BEGIN
    SET NOCOUNT ON;

    SELECT TOP 5
        StokKodu,
        COUNT(*) AS IzlenmeSayisi
    FROM
        TakipTablonuz
    GROUP BY
        StokKodu
    ORDER BY
        IzlenmeSayisi DESC;
END;

调用方式:

EXEC GetTop5EnCokIzlenenUrunler;

MySQL 存储过程

DELIMITER //
CREATE PROCEDURE GetTop5EnCokIzlenenUrunler()
BEGIN
    SELECT
        StokKodu,
        COUNT(*) AS IzlenmeSayisi
    FROM
        TakipTablonuz
    GROUP BY
        StokKodu
    ORDER BY
        IzlenmeSayisi DESC
    LIMIT 5;
END //
DELIMITER ;

调用方式:

CALL GetTop5EnCokIzlenenUrunler();

内容的提问来源于stack exchange,提问作者Ahmet Enes Söylemez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 00:25:26