Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

मैत्री प्रणाली Sql संरचना और प्रश्न

उपयोग करें:

SELECT f.friend_id
  FROM FRIENDS f
 WHERE f.user_id = $user_id
UNION
SELECT t.user_id
  FROM FRIENDS t
 WHERE t.friend_id = $user_id

UNION का उपयोग करना डुप्लिकेट हटा देगा। UNION ALL तेज़ होगा, लेकिन यह डुप्लिकेट को नहीं हटाता है।

अगर आप दोस्तों के लिए MEMBERS . से जानकारी प्राप्त करना चाहते हैं टेबल, उपयोग:

SELECT m.*
  FROM MEMBERS m
  JOIN (SELECT f.friend_id 'user_id'
          FROM FRIENDS f
         WHERE f.user_id = $user_id
        UNION
        SELECT t.user_id
          FROM FRIENDS t
         WHERE t.friend_id = $user_id) x ON x.user_id = m.id

BTW:मुझे आशा है कि आप mysql_escape_string का उपयोग कर रहे हैं। चर पर, अन्यथा आप SQL इंजेक्शन हमलों का जोखिम उठाते हैं:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. उपयोगकर्ता गतिविधि फ़ीड (अला फेसबुक)। समान गतिविधियों को कैसे समूहित करें?

  2. MySQL लर्निंग पाथ

  3. MySQL संग्रहित प्रक्रिया में ऑपरेशन '=' के लिए कॉलेशन (utf8_general_ci,IMPLICIT) और (utf8_unicode_ci,IMPLICIT) का अवैध मिश्रण

  4. विंडोज से MySQL 5.7 को पूरी तरह से कैसे हटाएं

  5. MySQL समान स्थिति मानों वाली शीर्ष पंक्तियों का चयन करें