我在MySQL中创建了一个名为‘NOTICY’的表.这张桌子是这样的
fiction:个
id | name | gender | image | browser | os |
---|---|---|---|---|---|
1 | chris | male | 1 | 0 | ios |
2 | emma | female | 1 | 1 | ios |
3 | james | male | 0 | 0 | android |
4 | lucas | male | 1 | 0 | android |
5 | amelia | female | 0 | 1 | ios |
6 | olivia | female | 1 | 0 | ios |
我想要做的是检索列的名称,其中‘Gender’列中的记录具有值‘Male’,而所有其他列具有相同的值.例如,如果我运行以下代码:
SELECT * FROM fiction WHERE gender = "male";
个
输出将为:
id | name | gender | image | browser | os |
---|---|---|---|---|---|
1 | chris | male | 1 | 0 | ios |
3 | james | male | 0 | 0 | android |
4 | lucas | male | 1 | 0 | android |
如您所见,"Browser"列在所有记录中都有一个公共值"0".所以我想要这个列名为‘Browser’.另一个例子:
SELECT * FROM fiction WHERE gender = "female";
个
输出:
id | name | gender | image | browser | os |
---|---|---|---|---|---|
2 | emma | female | 1 | 1 | ios |
5 | amelia | female | 0 | 1 | ios |
6 | olivia | female | 1 | 0 | ios |
正如您在这里看到的,"os"列在所有这些列中都有一个共同值.我需要一条向我显示这些公共列的SQL语句.
我使用了GROUP BY和HAVING表达式,但正如您所猜到的,它们并没有解决我的问题.我认为我需要做一些与INFORMATION_SCHEMA表相关的事情.