如何从mysql中具有动态条件的表中获取记录

时间:2018-04-03 07:27:16

标签: mysql

我有一个表tb_user,其中记录为:

id   Name    Gender   Age
1    Arun     Male    23
2    Neha    Female   22
3   Sheetal  Female   21
4    Vikas    Male    20

我需要做的是,如果我从api获得id = 1,那么我需要获取性别相同的记录。我正在做的是首先获取该id的性别然后将条件设置为如下:

Select Gender from tb_user where id = 1;

然后另一个查询来获取该id的记录

Select * from tb_user where Gender != $gender;

$ gender是我们从上一个查询中获得的性别。

需要做的是在单个查询中完成此任务。

1 个答案:

答案 0 :(得分:1)

您可以使用subQuery来实现目标。

SELECT * FROM tb_user WHERE Gender <> (SELECT Gender FROM tb_user WHERE id = 1);