我如何从此表中列出iduser,其中sex = man和int = woman?

Table usermeta
----------------------
id  iduser a        b
12  204    age      19
7   203    age      35
6   200    age      24
3   201    age      34
5   201    gender   man
2   200    gender   woman
8   203    gender   man
9   204    gender   man
4   201    int      woman
10  204    int      male
11  203    int      woman
1   200    int      male


答案应该是:

iduser

204

我还有一个问题,如果我也想过滤年龄怎么办?
我正在尝试解决此问题,但我不能...
我应该在哪里放“年龄= 19”?
我试试这个...
a ='年龄'
AND a。b ='19'
但是不工作...
谢谢。

最佳答案

自我加入应该起作用。像(未经测试的):

SELECT a.`iduser` FROM `table` a
JOIN `table` b ON b.`iduser` = a.`iduser`
WHERE a.`a`='gender' AND a.`b`='man' AND b.`a`='int' AND b.`b`='woman'

但是您应该考虑优化db结构,因为这似乎有点性能不足。

关于php - 从同一表中列出mysql中的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7245432/

10-10 19:16