Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.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,ARRAY,PHP吗_Php_Mysql - Fatal编程技术网

想要得到唯一的值MYSQL,ARRAY,PHP吗

想要得到唯一的值MYSQL,ARRAY,PHP吗,php,mysql,Php,Mysql,我们有一个MySQL查询,我们使用UNION ALL,我们为每个表得到两个值,我们只想得到一个值,或者我们再做一件事,比如我们将整个结果存储到数组中,然后进行相应的排序,然后通过Foreach循环从数组中调用ID 下面是MYSQL查询 $num = mysql_query("(SELECT resorts.id From resorts,JUNE WHERE JUNE.id = resorts.id and JUNE.table_type = 'disp' AND JUNE.JUNE1!=0 A

我们有一个MySQL查询,我们使用UNION ALL,我们为每个表得到两个值,我们只想得到一个值,或者我们再做一件事,比如我们将整个结果存储到数组中,然后进行相应的排序,然后通过Foreach循环从数组中调用ID

下面是MYSQL查询

$num = mysql_query("(SELECT resorts.id From resorts,JUNE WHERE JUNE.id = resorts.id and JUNE.table_type = 'disp' AND JUNE.JUNE1!=0 AND resorts.category IN (1,2,3,4) AND resorts.area IN (1,2,3,4) Group By resorts.id LIMIT 0,7 ) UNION ALL (SELECT resorts.id From resorts,JULY WHERE JULY.id = resorts.id and JULY.table_type = 'disp' AND JULY.JULY1!=0 AND resorts.category IN (1,2,3,4) AND resorts.area IN (1,2,3,4) Group By resorts.id LIMIT 0,7 )"); 我们得到的数据是这样的

表ID=78 表ID=124 表ID=11 七月表ID=78 七月表ID=124

我们只想做这一次,我们只得到任何双ID的单个值。比如,如果我们得到的是六月ID=78,我们再次得到的是七月ID=78的相同ID。我们只想做双ID的唯一列表,忽略重复的单个ID。这样地 表ID=78 表ID=124

忽略其余的id

注意:-我们的主要动机是,我们只传递在6月和7月可用的id,如果只有一个月,我们忽略所有值

不要全部使用UNION,请使用UNION

或者将所有查询放入如下子查询:

SELECT DISTINCT * FROM ($yourOldQueryHere)

我不确定您的表结构或数据,但要检索6月和7月都可用的度假胜地ID,您可以在3个表之间使用内部联接,如:

SELECT resorts.id
FROM resorts INNER JOIN JUNE ON resorts.id = JUNE.id
INNER JOIN JULY ON resorts.id = JULY.id
...
...

或者,如果上面不是您要查找的内容,并且您希望避免重复ID,那么如果我们有6月份,请使用UNION而不是UNION ALL

在查询中放置Where子句的位置=七月零日=0 ... 请使用Where子句向我提供实际查询..嗨,Rodger,正如我前面提到的,我不确定您的表和数据的含义,但是您可以尝试下面的查询,看看它是否适合您?从resorts.id=JUNE.id的resorts内部连接JUNE中选择resorts.id,resorts.id=JULY.id中选择resorts.id,其中JUNE.table_type='disp'和JULY.table_type='disp'和JUNE.JUNE1!=0和7月1日!=0和resorts.1,2,3,4中的resorts.category和resorts.1,2,3,4组中的resorts.area(按resorts.id);或者改为:在resorts.id=JUNE.id和JUNE.table_type='disp'和JUNE.JUNE1!=0在resorts.id=JULY.id和JULY.table_type='disp'和JULY.JULY1!=0,其中resorts.1,2,3,4中的resorts.category和resorts.1,2,3,4组中的resorts.area(按resorts.id);无法连接多个查询。。请帮我安全地使用这台机器。