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

MySQL स्टोर संबंध (परिवार) ट्री

एक विचार जो जेनेप्रो स्कीमा से आता है और RootsMagic

person
------
person_id
name (etc)

life_event_types
----------------
life_event_type_id
life_event_type_description (divorce, marriage, birth, death)

life_events
-----------
life_event_id
life_event_type_id
life_event_description
life_event_date

life_event_roles
----------------
life_event_role_id
life_event_role (mother, father, child)

person_event_role
-----------------
person_id - who
life_event_id - what happened
life_event_role_id - what this person did

तो आपके पास "जन्म" प्रकार की जीवन घटना हो सकती है, और role_id आपको बताता है कि माता-पिता कौन थे, और बच्चा कौन था। इसे विवाह, मृत्यु, तलाक, पालक माता-पिता, सरोगेट माता-पिता (जहां आपके बहुत जटिल संबंध वाले 3 या 4 माता-पिता हो सकते हैं) आदि तक बढ़ाया जा सकता है।

जहाँ तक अधिक दूर के सम्बन्धों को संचित करने का प्रश्न है, आप इनकी गणना कर सकते हैं। उदाहरण के लिए, आप किसी भी व्यक्ति के पिता की गणना उस व्यक्ति को प्राप्त करके कर सकते हैं जिसकी 'पिता' की भूमिका मेल खाने वाली event_id से हो। तब आप उस व्यक्ति के पिता को प्राप्त कर सकते हैं, और आपके पास मूल व्यक्ति का दादा है। कहीं भी कि कोई अज्ञात है, अज्ञात डेटा वाले व्यक्ति को बनाएं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MediaWiki डेटाबेस में एक उच्चारण और केस-असंवेदनशील खोज कैसे करें?

  2. एक MySQL क्वेरी परिणाम को एक .CSV फ़ाइल में कैसे सहेजें

  3. PHP में SQL क्वेरी झूठी लौट रही है

  4. SQL का उपयोग करके डेटाबेस में दूषित MPTT ट्री (नेस्टेड सेट) की मरम्मत कैसे करें?

  5. MySQL में पुनरावर्ती चयन क्वेरी कैसे करें?