对于发布问题,我是新来的,但我很久以前就一直在寻找答案。仍然我现在正在尝试做的事情是我没有找到正确的解决方案,或者我只是不知道如果我找到了如何使用它。
这是我的 SQL 查询:
$sql = "SELECT * FROM table_links AS link_id WHERE link_points > '1'
AND NOT EXISTS (SELECT * FROM table_surf AS slink_id WHERE user_id = '$user'
AND surf_time = '$time') ORDER by RAND() LIMIT 1";
我正在尝试选择一个随机的 LINK id(有积分),并通过查看第二个表来检查该链接是否已经显示给用户,其中所有 LINK ID 都保存为带有用户 ID 和时间的 SLINK ID访问。
如果上次访问是今天($time
),那么它不应该返回任何东西。
我是 PHP/mysql 的新手,但我正在努力学习,但在这种情况下,我仍然不确定是否有可能实现像这样的复杂查询。
更新:根据 Akhil 的帖子,这似乎对我有用 -
$sql = "SELECT * FROM (SELECT RAND() temp, link_id FROM table_links WHERE link_points > '1' AND link_status NOT IN ('spam') AND NOT EXISTS (SELECT slink_id FROM table_surf AS links WHERE user_id = '$user' AND surf_time = '$time' AND slink_id = '$surflink')) 临时限制 1 的订单";