gpt4 book ai didi

php - MySQL 查询在由第二个表中的另一个值连接的列中查找最流行的值

转载 作者:太空宇宙 更新时间:2023-11-03 12:35:30 26 4
gpt4 key购买 nike

我有两个表:

  • 用户:user_id、user_zip
  • 设置:user_id、pref_ex_loc

我需要根据特定的 user_zip 从设置表中找到单个最流行的“pref_ex_loc”,它将被指定为变量 $userzip。

这是我现在的查询,显然它不起作用。

$popularexloc = "SELECT pref_ex_loc, user_id COUNT(pref_ex_loc) AS countloc 
FROM settings FULL OUTER JOIN users ON settings.user_id = users.user_id
WHERE users.user_zip='$userzip'
GROUP BY settings.pref_ex_loc
ORDER BY countloc LIMIT 1";

$popexloc = mysql_query($popularexloc) or die('SQL Error :: '.mysql_error());
$exlocrow = mysql_fetch_array($popexloc);
$mostpopexloc=$exlocrow[0];
echo '<option value="'.$mostpopexloc.'">'.$mostpopexloc.'</option>';

我在这里做错了什么?我也没有从中收到任何类型的错误。

最佳答案

试一试:

select s.pref_ex_loc from settings s
join users u on (u.user_id = s.user_id)
where user_zip = $userzip
group by s.pref_ex_loc
order by count(*) desc
limit 1

正如您所说,这将为您提供“基于特定 user_zip 的设置表中单个最流行的 'pref_ex_loc'”

关于php - MySQL 查询在由第二个表中的另一个值连接的列中查找最流行的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13437542/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com