簡體   English   中英

結合使用MySQL選擇查詢和子查詢

[英]Using a MySQL select query with a sub query

我試圖從其中user_id不等於已登錄用戶的uder_id且user_id不在子查詢中的表中選擇數據行。 由於某種原因,我無法使其正常工作。 我該怎么辦?

我的代碼:

SELECT * 
FROM table_name 
WHERE user_id != '".$_SESSION['id']."' 
    AND user_id NOT IN(
      SELECT * FROM another_table_name where user1= '".$user_id."' AND status= 1)
ORDER BY RAND()
LIMIT 5

您只需要從another_table_name選擇user_id 沒有看到您的表結構,我無法進一步幫助您。

您的邏輯是正確的。 我們不知道查詢中的參數化值。 我的猜測是那些不等於您期望的值。

在您的子查詢中,您只想選擇user_ids,您的子查詢使用“ select *”

SELECT * FROM table_name WHERE user_id != '".{$_SESSION['id']}."' AND user_id NOT IN(SELECT    
user_id FROM another_table_name where user1= '".$user_id."' AND status= 1) ORDER BY RAND()     LIMIT   5

您只需要從子查詢中選擇user_id 也許像:

SELECT * 
  FROM table_name 
  WHERE user_id != '".{$_SESSION['id']}."' 
    AND user_id NOT IN(SELECT user_id 
      FROM another_table_name 
      WHERE user1= '".$user_id."' 
      AND status= 1) 
  ORDER BY RAND() 
  LIMIT 5

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM