我有一个包含许多列的表,但有两个主要列,分别称为 District
和 State
。我的sql查询如下。
$query = "SELECT * FROM table WHERE District = '" . $var . "' ORDER BY Date DESC";
此查询返回区列中的数据。
现在这就是我想要的。在某些行中,District
列为空,因此在这种情况下,我希望查询从 State
列提取数据。这可能吗?
这可以在 mysql 查询中完成还是我必须在 php 中编写一些东西?
最佳答案
空虚是什么意思?如果它是 NULL
那么你应该使用 COALESCE
SELECT *, COALESCE(District, State) NewDistrict
FROM...
但是如果它是空的,如''
。然后
SELECT *, IF(District = '', State, District) NewDistrict
FROM...
关于php - mysql查询将值分配给来自不同列的相同变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13581325/