[英]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.