php - 如何在同一查询中一起选择相似的值?

标签 php mysql

我有如下数据库,我需要从下表中获取单独列表中的所有零和一,即将所有零放在一列中,将所有零放在单独列中

数据库

| id | value |
-------------
| 1  |   0   |
| 2  |   1   |
| 3  |   0   |
| 4  |   1   |

预期结果

| sp.id | stop | st.id | start|
-------------------------------
|   1   |   0  |   2   |   1  |
|   3   |   0  |   4   |   1  |

| id | value |
-------------
| 1  |   0   |
| 3  |   0   |


| id | value |
-------------
| 2  |   1   |
| 4  |   1   |

最佳答案

SELECT a.id AS sp.id, a.value AS stop, b.id AS st.id, b.value AS start
FROM (SELECT * FROM TABLE WHERE = 0) a
LEFT JOIN (SELECT * FROM TABLE WHERE = 1) b
ON a.id = b.id
UNION
SELECT a.id AS sp.id, a.value AS stop, b.id AS st.id, b.value AS start
FROM (SELECT * FROM TABLE WHERE = 0) a
RIGHT JOIN (SELECT * FROM TABLE WHERE = 1) b
ON a.id = b.id

关于php - 如何在同一查询中一起选择相似的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59942342/

相关文章:

php - mysql sum 与命名列

PHP 使用 Propel 从 MySql 迁移到 Postgres

php - 如何获得 789 之前所有可能的数字组合?

sql - 在 MySQL 中用一个公共(public)键连接两个表

PHP插入查询重新调整成功但没有将数据插入表

php - 扩展无法启用或安装的问题

php - 如何使用准确的帖子标题进行查询

mysql - 引用复合主键的单个列

mysql - sql内连接查看表

mysql - 如何设置MySQL?