MYSQL SELECT QUERY其中列是相同的

时间:2011-09-29 12:09:13

标签: php mysql

您好我正在尝试查询我的数据库中的表,基本上我需要从表中选择driver_id,其中team_id与用户驱动程序ID相同,存储在变量$ user_driver_one中。所以选择具有相同team_id的其他驱动程序非常好。

column driver_id 1 2 3 4 5 6 7 8 9 10

  column team_id 3 3 2 2 1 1 4 4 5 5

因此用户可以拥有$ user_driver_one = 4,因此我需要在查询中选择driver_id = 3,因为driver_id 3具有相同的team_id。

我遇到了这个问题,非常感谢任何帮助。

4 个答案:

答案 0 :(得分:4)

确保您转义参数

$user_driver_one = (int) $user_driver_one;

MySQL的:

"SELECT `driver_id` 
 FROM `table` 
 WHERE `team_id` = (
     SELECT `team_id`
     FROM `table`
     WHERE `driver_id` = '$user_driver_one'
     LIMIT 1
    )
 AND `driver_id` != '$user_driver_one'";

答案 1 :(得分:1)

 SELECT driver_id FROM T1 WHERE team_id = driver_id AND team_id = @user_driver_one

答案 2 :(得分:0)

如果您要使用PHP,它将如下所示:

mysql_query("SELECT driver_id FROM tablename WHERE team_id = '$user_driver_one'");

当然,在进行查询之前的一些卫生设施会很聪明,特别是如果你从用户输入中分配$ user_driver_one变量。

答案 3 :(得分:0)

select driver_id from yourtablename where team_id in (select team_id from yourtablename where driver_id=4)and driver_id!=4

您可以使用$ user_driver_one代替4