MYSQL从不同行选择2个具有相同值的不同字段

标签 mysql

我有一张 table :

ID   APARTMENT_ID   CHECK_IN       CEHCK_OUT 
1    2              2014-18-07     2014-18-09
2    2              2015-01-01     2014-03-02
3    3              2014-08-01     2014-09-01
4    3              2014-09-01     2014-12-09
5    4              2014-18-07     2014-18-09

我想获取 ID、APARTMENT_IDCHECK_INCEHCK_OUT 。不同 ID 中存在同一日期。 在此表上查询将带来结果

APARTMENT_ID => 3
ID => 3, 4 
CHECK_IN CEHCK_OUT => 2014-09-01.

我尝试过类似的东西

SELECT * FROM `orders` 
WHERE `ID` != `ID` and `CHECK_IN`=`CEHCK_OUT` 

但这不是正确的方法,0 结果。 感谢任何可以帮助我的人。

最佳答案

您必须使用自联接,否则您只是比较同一行中的字段:

SELECT *
FROM orders o1
JOIN orders o2 ON o1.id != o2.id AND o1.check_in = o2.check_out

关于MYSQL从不同行选择2个具有相同值的不同字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25375820/

相关文章:

php - 将 SQL 调用的结果存储在 php 变量中

mysql - 修改主键的第二列

MySQL 限制子句不接受 2 个参数

mysql - 无法使用 SSIS 将 SQL Server varchar(max) 传输到 MySQL 文本

mysql - 从 cPanel 配置远程 MySQL 连接

php mysql select 下拉选择和不同的查询

mysql - 试图找到具有 4 个条件的查询

php - mysql可以左右加入吗

java - 如何使用 websockets 从 mysql 获取实时通知更新?

php - mysql 事件调度程序每天上午 8 点安排事件