select - 错误代码 1241:操作数应包含 1 列
问题描述
我的目标是检索余额大于零的所有帐户。
我有两张表 tblloancontract 和 tblloanpayment。
tblloancontract有两列:accnum
和idmember
。
tblloanpayment具有:idpayment
、、balance
和accnum
(来自 tblloancontract 的外键)。
下面是我目前写的MYSQL代码:
SELECT * FROM tblloanpayment WHERE accnum IN
(SELECT MAX(idpayment), tblloanpayment.accnum, MIN(tblloanpayment.balance)
FROM tblloanpayment JOIN tblloancontract ON tblloanpayment.accnum=tblloancontract.accnum
GROUP BY idmember) AND balance > 0;
解决方案
您不只想要最低余额大于 0 的所有帐户吗?在那种情况下,你为什么需要这张tblloancontract
桌子?
SELECT tlp.accnum, MIN(tlp.balance)
FROM tblloanpayment tlp
GROUP BY tlp.accnum
HAVING MIN(tlp.balance) > 0;
这并不是存储贷款信息的好方法。“合同”表应该有初始余额和当前余额,“付款”表应该有付款金额。
推荐阅读
- mysql - 无法连接到 Windows 机器上 Docker 上托管的 Mysql
- node.js - 无法读取未定义的属性“错误”。有什么问题?
- python - 使用嵌套列表将 comp 变量作为范围参数列出?
- c# - z轴旋转调试不为0,在inspector中为0
- android - 自定义 RecyclerViewAdapter 的 notifyItemRemoved 给了我一个 java.lang.IndexOutOfBoundsException
- database - 批量更新 postgresql 序列
- python-3.x - 找到对不和谐做出反应时保存图像的功能
- angular - Electron + Angular7 如何在组件中使用 serialport.list()
- java - Spring Boot 2 WebClient 响应将 JSON 转换为 HashMap
- haskell - 制作更好的 Haskell 函数