Mysql 选择特定列中具有相同值的所有项

Mysql 选择特定列中具有相同值的所有项,mysql,Mysql,我正在尝试获取与特定用户共享相同值的所有用户 例如TBL用户: id | user | color | value 1 Misha red 30 2 Kurt blue 249 3 Lars grey 30 4 Dave black 249 5 Steve orange 30 如果我想得到像Lars这样的用户,我应该得到:Misha、Steve和Lars。如果我想得到像Kurt这样的用户,我应该得到:Dave,K

我正在尝试获取与特定用户共享相同值的所有用户

例如TBL用户:

id | user | color | value 

 1   Misha  red      30
 2   Kurt   blue    249
 3   Lars   grey     30
 4   Dave   black   249
 5   Steve   orange  30
如果我想得到像Lars这样的用户,我应该得到:Misha、Steve和Lars。如果我想得到像Kurt这样的用户,我应该得到:Dave,Kurt

我发布了我得到的实际sql,它包括一个连接,我有一些语法错误

$sql = "SELECT DISTINCT(value) FROM users 

WHERE value IN (SELECT value FROM users WHERE user = '{$user}')
INNER JOIN posts  ON users.user  = posts.user
ORDER BY posts.post_date DESC LIMIT {$start}, {$limit} ";
任何帮助都是感激的

SELECT
`user`
FROM your_table
WHERE value IN (SELECT value FROM your_table WHERE `user` = 'Lars');
编辑:

你需要交换线路

$sql = "SELECT DISTINCT(value) FROM users 
INNER JOIN posts  ON users.user  = posts.user
WHERE value IN (SELECT value FROM users WHERE user = '{$user}')
ORDER BY posts.post_date DESC LIMIT {$start}, {$limit} ";

我想在你桌子的别名的帮助下会发生类似的事情

SELECT * FROM YOUR_TABLE YT WHERE YT.VALUE IN (SELECT VALUE FROM YOUR_TABLE); 

如果mysql中不存在对应的DB2语法,您可以在其中查找对应的DB2语法

您尝试过什么吗?尝试以下操作:从您的_表YT中选择*,其中YT.VALUE位于从您的_表中选择值中;刚才编辑了我的问题,我有语法错误。刚刚在m,y查询中包含了你的答案,但我有sintax错误,必须是Join,你甚至可以在这里改为=因为子查询只返回一个值。也就是说,除非您的表中可以有多个“lar”。@MikeSpider编辑了我的答案以修复您的语法错误。