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

Mysql में अल्पविराम द्वारा अलग किए गए एकाधिक मान को कैसे खोजें

मैं कहूंगा कि, यहां, आपकी डेटा संरचना बिल्कुल सही नहीं है।

कुछ अल्पविराम से अलग किए गए प्रारूप का उपयोग करके एक फ़ील्ड में कई मानों को संग्रहीत न करने का एक बेहतर समाधान होगा, लेकिन इस तरह परिभाषित तीन तालिकाओं का उपयोग करें:

  • searchtest
    • id
    • name
  • keywords
    • id
    • word
  • keywords_searchtest
    • id_keyword
    • id_searchtest


उसके साथ, searchtest में प्रविष्टियों की खोज करना जिनके पास विशिष्ट कीवर्ड हैं, वे उतने ही सरल होंगे जितना :

select searchtest.*, keywords.*
from searchtest
    inner join keywords_searchtest on keywords_searchtest.id_searchtest = searchtest.id
    inner join keywords on keywords.id = keywords_searchtest.id_keyword
where keywords.word = 'test2'


और, इसके अतिरिक्त, आपको एक विशिष्ट नाम के साथ searchtest प्रविष्टियों की खोज करनी होगी:

select *
from searchtest
where name = 'trophy1'


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL:यूनिकोड इकाइयों के लिए पूछताछ

  2. विभिन्न मंचों को श्रेणियों में कैसे समूहित करें PHP

  3. MySQL को Go से कनेक्ट करने का अनुशंसित तरीका क्या है?

  4. MySQLdb और पायथन आयात त्रुटि

  5. गतिशील अनुमति बाधाओं को कैसे संहिताबद्ध और संग्रहीत करें?