作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我希望能够从任一列中选择值,其中 a 列或 b 列不是我指定的值。
让我解释一下。
我在网站上有一张好友表,如下所示:
columna | columnb
6774 887
887 2423
3434 887
3434 6774
887 3455
887 33444
343434 2343
Columna 告诉您谁发送了请求。
我们的用户目前是887,如何使用MySQL找出他的好友是谁?
谢谢
最佳答案
SELECT (CASE WHEN columna = 887 THEN columnb ELSE columna END) AS 'columnAlias'
FROM <table>
WHERE columna = 887
OR columnb = 887
编辑: 使用上述查询的结果从另一个表获取详细记录...
使用 JOIN:
SELECT T2.*
FROM Table2 AS T2
INNER JOIN (SELECT (CASE WHEN columna = 887 THEN columnb ELSE columna END) AS 'columnAlias'
FROM Table1
WHERE columna = 887
OR columnb = 887) AS _Temp ON _Temp.columnAlias = T2.ForeignKeyColumn
使用嵌套查询:
SELECT T2.*
FROM Table2 AS T2
WHERE T2.ForeignKeyColumn IN (SELECT (CASE WHEN columna = 887 THEN columnb ELSE columna END) AS 'columnAlias'
FROM Table1
WHERE columna = 887
OR columnb = 887)
关于MySQL 使用 IF 语句进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8916847/
我是一名优秀的程序员,十分优秀!