为了账号安全,请及时绑定邮箱和手机立即绑定

仅从表 id 2 数据中获取数据

仅从表 id 2 数据中获取数据

PHP
斯蒂芬大帝 2022-05-27 10:10:24
我有一张桌子id   sentUID    recUID   Amount1       1         2       1002       2         1       1003       4         2       1004       2         1       1005       8         6       1006       2         9       100我想像这样获得 userID 2 记录id   sentUID    recUID   Amount1       1         2       1003       4         2       1006       2         9       100只有三个 UserID 1、4、9 发送或接收金额。
查看完整描述

2 回答

?
慕的地8271018

TA贡献1796条经验 获得超4个赞

我想你想要:


select t.*

from t

where 2 in (sentUID, recUID)

order by id;


查看完整回答
反对 回复 2022-05-27
?
HUH函数

TA贡献1836条经验 获得超4个赞

试试这个:


SELECT * FROM data WHERE id IN 

(SELECT tab1.mId FROM

  (SELECT MIN(id) as mId, CASE WHEN sentUID=2 THEN recUID

                               WHEN recUID=2  THEN sentUID 

                          END AS person

   FROM data WHERE recUID=2 OR sentUID=2

   GROUP BY person)

 AS tab1);

结果:


id   sentUID    recUID   Amount

1       1         2       100

3       4         2       100

6       2         9       100

中间表tab1列出了以 2 出现的每个唯一 UID,用于计算最终结果:


mId       person

1          1

3          4

6          9

http://sqlfiddle.com/#!9/16f6a5/13/0


查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 93 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信