数据库篇之存储过程[bsp_getfavoriteproductlist](非官方版本)

简介:

差异如图:

更新语句如下:

DROP PROCEDURE [bsp_getfavoriteproductlist]
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [bsp_getfavoriteproductlist]
@pagesize int,
@pagenumber int,
@uid int
AS
BEGIN
	SET NOCOUNT ON;
	
	IF @pagenumber=1
	BEGIN
		SELECT [temp1].[recordid],[temp1].[uid],[temp1].[state],[temp1].[addtime],[temp1].[pid],[temp2].[name],[temp2].[shopprice],[temp2].[showimg] FROM
		(SELECT TOP(@pagesize) [recordid],[uid],[pid],[state],[addtime] FROM [bsp_favorites] WHERE [uid]=@uid ORDER BY [recordid] DESC) AS [temp1]
		LEFT JOIN [bsp_products] AS [temp2]
		ON [temp1].[pid]=[temp2].[pid]
	END
	ELSE
	BEGIN
		SELECT [temp1].[recordid],[temp1].[uid],[temp1].[state],[temp1].[addtime],[temp1].[pid],[temp2].[name],[temp2].[shopprice],[temp2].[showimg] FROM
		(SELECT TOP(@pagesize) [recordid],[uid],[pid],[state],[addtime] FROM [bsp_favorites] WHERE [uid]=@uid AND [pid] NOT IN
		(SELECT TOP(@pagesize*(@pagenumber-1)) [pid] FROM [bsp_favorites] WHERE [uid]=@uid ORDER BY [recordid] DESC) ORDER BY [recordid] DESC) AS [temp1]
		LEFT JOIN [bsp_products] AS [temp2]
		ON [temp1].[pid]=[temp2].[pid]
	END
	
END
GO


目录
相关文章
|
4月前
|
物联网 测试技术 API
时序数据库 InfluxDB 3.0 版本性能实测报告:写入吞吐量提升效果验证
TSBS 测试表明,对于少于 100 万台设备的数据集,InfluxDB OSS 3.0 的数据写入速度实际上比 InfluxDB OSS 1.8 更慢。 对于 100 万台及以上设备的数据集,InfluxDB OSS 3.0 的数据写入性能才开始超过 InfluxDB OSS 1.8。 InfluxDB OSS 3.0 的数据写入接口与 InfluxDB 1.8 并不兼容,用户无法顺利迁移。
160 7
|
9月前
|
SQL JSON 关系型数据库
MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
【10月更文挑战第3天】MySQL是一个广泛使用的开源关系型数据库管理系统,它有许多不同的版本
497 5
|
9月前
|
存储 SQL 关系型数据库
MySql数据库---存储过程
MySql数据库---存储过程
111 5
|
9月前
|
SQL Oracle 关系型数据库
SQL数据库当前版本概览与更新趋势
在探讨SQL(Structured Query Language)数据库的当前版本时,我们首先要明确的是,SQL本身是一种查询语言标准,而并非特指某一个具体的数据库产品
|
10月前
|
关系型数据库 分布式数据库 数据库
开源云原生数据库PolarDB PostgreSQL 15兼容版本正式发布
PolarDB进行了深度的内核优化,从而实现以更低的成本提供商业数据库的性能。
|
8月前
|
SQL 关系型数据库 数据库连接
"Nacos 2.1.0版本数据库配置写入难题破解攻略:一步步教你排查连接、权限和配置问题,重启服务轻松解决!"
【10月更文挑战第23天】在使用Nacos 2.1.0版本时,可能会遇到无法将配置信息写入数据库的问题。本文将引导你逐步解决这一问题,包括检查数据库连接、用户权限、Nacos配置文件,并提供示例代码和详细步骤。通过这些方法,你可以有效解决配置写入失败的问题。
395 0
|
9月前
|
XML 缓存 数据库
Discuz! X3.0 版本的数据库字典
Discuz! X3.0 版本的数据库字典
168 0
|
9月前
|
JavaScript 前端开发 测试技术
[新手入门]todolist增删改查:vue3+ts版本!
【10月更文挑战第15天】[新手入门]todolist增删改查:vue3+ts版本!
|
5月前
|
存储 Java 关系型数据库
java调用mysql存储过程
在 Java 中调用 MySQL 存储过程主要借助 JDBC(Java Database Connectivity)。其核心原理是通过 JDBC 与 MySQL 建立连接,调用存储过程并处理结果。具体步骤包括:加载 JDBC 驱动、建立数据库连接、创建 CallableStatement 对象、设置存储过程参数并执行调用。此过程实现了 Java 程序与 MySQL 数据库的高效交互。
|
4月前
|
存储 关系型数据库 MySQL
【YashanDB知识库】MySQL返回结果集的存储过程的改写方法
本文介绍了将MySQL存储过程改写至YashanDB的解决方案。由于MySQL存储过程可直接返回结果集,而YashanDB需通过返回SYS_REF_CURSOR的函数实现类似功能,因此需要对代码进行转换。示例中展示了如何将MySQL存储过程`proc1`改写为YashanDB函数,并调整JDBC应用代码以适配REF_CURSOR输出参数,从而正确获取查询结果。此方法确保了跨数据库场景下的兼容性与功能性。