如何从表中获取空记录的列名?例如:
SELECT column.name FROM table WHERE id='1111' AND column_name=''
它应该从表中返回空列的每个标题。
答案 0 :(得分:1)
如果你使用mysql 5.0+,你可以获得一个表的所有列名,如下所示:
SELECT COLUMN_NAME
FROM `information_schema`.`COLUMNS`
WHERE TABLE_NAME='$table_name'
ORDER BY ORDINAL_POSITION
注意:Chane $ table_name为表名的名称。
答案 1 :(得分:1)
这也是一种方法:
$mysql_query = mysql_query("describe table");
while ($row = mysql_fetch_array($mysql_query)) {
echo $row[0]."</br>";
}
答案 2 :(得分:0)
为了简单起见,我会用php来做,但是在dbms级别可能有一个复杂的mysql方法
在PseudoCode中:
$result = MYSQL_FETCH_ASSOC ( MYSQL_QUERY( SELECT * FROM table WHERE id='1111' ) )
$blankCols = array();
foreach($result[0] as $key=>$value){
if($value=="")
{
$blankCols[] = $key;
}
}
正如我之前提到的,这看起来很丑陋,看起来像是一个糟糕的数据结构设计。