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

SQL क्वेरी में किसी सरणी का उपयोग करना

यहां आपके लिए एक सामान्य लेआउट है, जैसा आपने उल्लेख किया है, तीन टेबल बनाएं, मैंने नीचे एक उदाहरण के रूप में रेखांकित किया है

[टेबल्स]

  • उपयोगकर्ता
  • अनुयायियों
  • पोस्ट

उपयोगकर्ता तालिका में आपके पास कम से कम उपयोगकर्ता आईडी (ऑटो इंक्रीमेंटेड वैल्यू / प्राइमरी की) जैसे कॉलम होने चाहिए।

फॉलोअर्स टेबल में यूजर आईडी जैसा कुछ होना चाहिए जो यूजर टेबल यूजर आईडी से मेल खाएगा, एक फॉलोइड कॉलम जिसमें यूजर टेबल से फॉलोअर के लिए आईडी # भी होगी।

फिर अपनी पोस्ट टेबल के लिए आप उपयोगकर्ता आईडी भी रखना चाहेंगे ताकि जब प्रत्येक पोस्ट बनाया जाए तो उसके पास उपयोगकर्ता तालिका से आईडी होगी।

फिर आपको कुछ ऐसा करना होगा:

SELECT p.*
FROM posts AS p
WHERE p.userid IN (SELECT followid FROM followers WHERE userid = ###)
ORDER BY p.date DESC

अब यह वास्तव में इस बात पर निर्भर करता है कि आप इसे समझने के लिए उपयोगकर्ता आईडी कैसे प्राप्त कर रहे हैं। यदि आप फेसबुक जैसी किसी चीज़ के समान लॉग इन करने के बाद सत्र का उपयोग कर उपयोगकर्ता आईडी पास कर रहे हैं, तो आप उपयोगकर्ता आईडी =### को उपयोगकर्ता आईडी =".$ _ सत्र ['userid'] जैसे कुछ में बदल सकते हैं।" लेकिन फिर से यह वास्तव में इस बात पर निर्भर करता है कि आप उपयोगकर्ता आईडी कैसे पास करते हैं लेकिन उपरोक्त आपको कम से कम कुछ हद तक शुरू करना चाहिए।

उपयोगकर्ता आईडी, फॉलोइड कॉलम पर इंडेक्स डालना सुनिश्चित करें ताकि जब टेबल बड़ी हो जाए तो वह जल्दी से जुड़ जाए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP mysql फॉर्म, अटक गया

  2. शर्तों के अनुसार MYSQL क्वेरी परिणाम ऑर्डर कैसे करें?

  3. मध्य पंक्तियों में एक नई पंक्ति डालने के लिए MySQL सिंटैक्स?

  4. MySQL एक तारीख में दिन जोड़ता है

  5. MySQL उप-चयन के अंदर सीमा खंड का समर्थन नहीं करता है, मैं यह कैसे कर सकता हूं?