mysql> SELECT p2.DbId, p2.happiness, p2.user_DbId, p1.user_DbId, p1.DbId FROM `pet` AS p1 INNER JOIN pet AS p2 ON ( p1.user_DbId = p2.user_DbId ) having p1.user_DbId = 142; +------+-----------+-----------+-----------+------+ | DbId | happiness | user_DbId | user_DbId | DbId | +------+-----------+-----------+-----------+------+ | 482 | 0 | 142 | 142 | 482 | | 484 | 0 | 142 | 142 | 482 | | 482 | 0 | 142 | 142 | 484 | | 484 | 0 | 142 | 142 | 484 | +------+-----------+-----------+-----------+------+ 4 rows in set (0.08 sec) mysql> SELECT p2.DbId, p2.happiness, p2.user_DbId, p1.user_DbId, p1.DbId FROM `pet` AS p1 INNER JOIN pet AS p2 ON ( p1.user_DbId = p2.user_DbId ) group by (p1.user_DbId) having p1.user_DbId = 142; +------+-----------+-----------+-----------+------+ | DbId | happiness | user_DbId | user_DbId | DbId | +------+-----------+-----------+-----------+------+ | 482 | 0 | 142 | 142 | 482 | +------+-----------+-----------+-----------+------+