ct415884941 2024-03-19 10:28 采纳率: 33.3%
浏览 2

sql数据表 店与店之间往来计算

有一个门店与门店的往来账目记录,自己技术不够想了很多办法都没办法实现。请大家帮忙看看。大致需要这种格式

img

数据库表

img





-- ----------------------------
-- Table structure for 221
-- ----------------------------
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[221]') AND type IN ('U'))
    DROP TABLE [dbo].[221]
GO

CREATE TABLE [dbo].[221] (
  [发卡店铺] nvarchar(255) COLLATE Chinese_PRC_CI_AS  NULL,
  [订单号] nvarchar(255) COLLATE Chinese_PRC_CI_AS  NULL,
  [消费店] nvarchar(255) COLLATE Chinese_PRC_CI_AS  NULL,
  [消费金额] nvarchar(255) COLLATE Chinese_PRC_CI_AS  NULL
)
GO

ALTER TABLE [dbo].[221] SET (LOCK_ESCALATION = TABLE)
GO


-- ----------------------------
-- Records of 221
-- ----------------------------
INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'003', N'2024020100210054', N'002', N'266.49')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'001', N'2024020100710132', N'007', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'012', N'2024020100110064', N'001', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'001', N'2024020100400079', N'004', N'310.12')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'005', N'2024020100810092', N'008', N'360.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'001', N'2024020101000017', N'010', N'100.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'012', N'2024020100110057', N'001', N'360.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'007', N'2024020101000101', N'010', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'005', N'2024020102200007', N'022', N'582.30')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900002', N'009', N'450.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900006', N'009', N'2000.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900007', N'009', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900010', N'009', N'710.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900018', N'009', N'300.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900021', N'009', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900032', N'009', N'300.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900053', N'009', N'300.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900058', N'009', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'010', N'2024020100900070', N'009', N'500.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'006', N'2024020101000125', N'010', N'100.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'007', N'2024020101000061', N'010', N'100.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'006', N'2024020101600138', N'016', N'200.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'003', N'2024020100810225', N'008', N'300.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'005', N'2024020100810284', N'008', N'280.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'007', N'2024020101800057', N'018', N'249.00')
GO

INSERT INTO [dbo].[221] ([发卡店铺], [订单号], [消费店], [消费金额]) VALUES (N'002', N'2024020101400176', N'014', N'150.00')






  • 写回答

2条回答 默认 最新

  • 码农阿豪@新空间代码工作室 Java领域优质创作者 2024-03-19 10:29
    关注
    让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言
    请描述具体需要的功能/问题: 根据门店与门店的往来账目记录,生成门店往来账目表格,包括每个门店的应收、应付、实收、实付等信息。 请提供你的思路/解决方案:
    1. 首先需要从数据库中查询出门店与门店的往来账目记录,包括发卡店铺、订单号、消费店、消费金额等四个字段。
    2. 接着需要对查询结果按照门店进行分组,统计每个门店的应收、应付金额,以及实收、实付金额。
    3. 最后需要将统计结果展示在页面上,通过表格进行展示。 SQL语句示例: SELECT [发卡店铺], [消费店], SUM(CASE WHEN [消费金额] > 0 THEN [消费金额] ELSE 0 END) AS 应收金额, SUM(CASE WHEN [消费金额] < 0 THEN [消费金额] ELSE 0 END) AS 应付金额, SUM(CASE WHEN [消费金额] > 0 THEN [消费金额] ELSE 0 END) - SUM(CASE WHEN [消费金额] < 0 THEN [消费金额] ELSE 0 END) AS 实收付金额 FROM [dbo].[221] GROUP BY [发卡店铺], [消费店] 前端代码示例:
    发卡店铺消费店应收金额应付金额实收付金额
    {{#each data}}
    {{this.发卡店铺}}{{this.消费店}}{{this.应收金额}}{{this.应付金额}}{{this.实收付金额}}
    {{/each}} 请说明你的解决方案的优势:
    1. 使用SQL语句进行数据处理,可快速、准确地对门店往来账目进行统计。
    2. 前端代码简洁易懂,展示效果清晰明了。
    评论

报告相同问题?

问题事件

  • 创建了问题 3月19日

悬赏问题

  • ¥15 Pyqt 如何正确的关掉Qthread,并且释放其中的锁?
  • ¥30 网站服务器通过node.js部署了一个项目!前端访问失败
  • ¥15 WPS访问权限不足怎么解决
  • ¥15 java幂等控制问题
  • ¥15 海湾GST-DJ-N500
  • ¥15 氧化掩蔽层与注入条件关系
  • ¥15 Django DRF 如何反序列化得到Python对象类型数据
  • ¥15 多数据源与Hystrix的冲突
  • ¥15 如何在线硕士了解,广告太多,希望有真实接触过的人回答下?(标签-学习|关键词-在线硕士)
  • ¥15 zabbix6.4与frp如何进行联动