2011-09-18 155 views
0

当查询的结果存在,我想知道,有正确的结果行(S)的名称:表名结果查询

$query = "SELECT Id FROM Programacao WHERE ID = 1"; 
$curDate = date("Y-m-d H").':00:00'; 
$query = "SELECT Id 
    FROM Programacao 
    WHERE Data1 = '$curDate' 
     OR Data2 = '$curDate' 
     OR Data3 = '$curDate'" 
$result = mysql_query($query); 
while ($row = mysql_fetch_array($result)){} 

简单地谈论它if(Data1 == curDate)return Data1; if(Data2 == curDate)return Data2 ....

对不起,我的英语不好。

+0

为什么需要此信息?你在编写query_时知道表名,为什么要问数据库你已经知道的东西,或者你把“表”与“行”混淆了? – Bojangles

+0

我不明白你的问题。你不是在那个陈述中查询单个表吗? –

+0

您的表名是Programacao。此外,该查询将结果集限制为空或返回“1”。请说明你正在尝试做什么。 – gview

回答

0

也许你的意思是? (UNIONUNION ALL):

$query = " 
    SELECT Id 
     , 'Data1' AS name 
    FROM Programacao 
    WHERE Data1 = '$curDate' 
UNION 
    SELECT Id 
     , 'Data2' 
    FROM Programacao 
    WHERE Data2 = '$curDate' 
UNION 
    SELECT Id 
     , 'Data3' 
    FROM Programacao 
    WHERE Data3 = '$curDate' 
     " ;