Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 在函数中使用时,如何获取SELECT查询中未返回任何行的值_Mysql_Sql - Fatal编程技术网

Mysql 在函数中使用时,如何获取SELECT查询中未返回任何行的值

Mysql 在函数中使用时,如何获取SELECT查询中未返回任何行的值,mysql,sql,Mysql,Sql,我有一个问题: 从表格中选择Column1,其中Column2位于'val1','val2','val3',..'valn' 现在我想要那些没有返回任何行的值。指我在函数中传递的值,但它们不在我的表中 对不起,我没有说清楚:我是这样做的: SELECT x.f FROM (SELECT 'val1' as f UNION ALL SELECT 'val2' UNION ALL SELECT 'val3') x LEFT JOIN Table t ON x.f = t.Column2 WHERE

我有一个问题:

从表格中选择Column1,其中Column2位于'val1','val2','val3',..'valn'

现在我想要那些没有返回任何行的值。指我在函数中传递的值,但它们不在我的表中

对不起,我没有说清楚:

我是这样做的:

SELECT x.f FROM
(SELECT 'val1' as f
UNION ALL
SELECT 'val2'
UNION ALL
SELECT 'val3') x
LEFT JOIN Table t ON x.f = t.Column2
WHERE t.Column2 IS NULL
$have_values = array('val1','val2'..... 'valn');
$i=0;
$have_values_string=""; 
foreach($have_values as $var => $val)
{
$have_values_string.="'".$val."'";
if($i!=count($have_values)-1) {  $have_values_string.=",";}
$i++;
}

//now querying..
$sql=SELECT Column1 , Column2 FROM Table WHERE Column2 IN ('val1,'val2','val3',....'valn');
$result=mysql_query($sql);
while($row=mysql_fetch_array($result))
{
$found_values[$row[0]]=$row[1];
}

$not_found_values=array_diff($have_values, $found_values);

查询无法返回不存在的数据。但是你可以把它们放到临时表中,然后对它们进行连接。