जैसा कि आप नीचे देख सकते हैं, मैं यह देखने के लिए जांच कर रहा हूं कि वर्तमान उपयोगकर्ता user_a
या user_b
तालिका मित्रों के कॉलम में है या नहीं।MySQL सशर्त
वर्तमान उपयोगकर्ता कहां स्थित है, इस पर निर्भर करता है कि मैं उसका संबंधित मित्र प्राप्त करना चाहता हूं।
किसी तरह मैं इस वाक्य काम करते हैं और आश्चर्य नहीं मिल सकता है अगर कोई मुझे बता सकते हैं कि क्या गलत है (मैं IF user_a = 2
के पास लाइन 3 पर एक त्रुटि प्राप्त।
SELECT *
FROM friends
IF user_a = 2 THEN
JOIN user_profiles ON friends.user_b = user.profiles.user_id
WHERE user_a = 2
AND accepted = 1;
ELSEIF user_b = 2 THEN
JOIN user_profiles ON friends.user_a = user_profiles.user_id
WHERE user_b = 2
AND accepted = 1;
END IF;
ठीक है वहाँ एक आम सहमति है कि यह कुछ crapshot mySQL कोड है लगता है - किसी को भी करता है मेरे लिए एक सुझाव/रोडमैप परिणाम मैं चाहता हूँ प्राप्त करने के लिए है? – pepe
यदि आप समझते हैं कि आप वास्तव में क्या करने की कोशिश कर रहे हैं, तो सहायता करना आसान होगा। – dkamins
आप इसे यूनियन के साथ कर सकते हैं ... मेरा जवाब देखें। –