MYSQL: how to search for fields that hold values sep. by commas? -


  1. टैग (id_tag, name)
  2. समाचार (आईडी, शीर्षक, डेटा, टैग)

फ़ील्ड समाचार> टैग एक varchar (255) है । Im उस क्षेत्र में इस तरह से डेटा डाल करने की योजना बना रहा है: " 1,7,34 "

इसका अर्थ है कि समाचार में एक विशेष पंक्ति से लिंक है टैग तालिका से 1, 7 और 34 टैग।

फिर, मैं सभी समाचार अभिलेख के लिए कैसे खोज सकता हूं टैग फ़ील्ड में 34 मूल्य (दूसरों के बीच) है?

क्या ऐसा करने का एक बेहतर तरीका है?

आप एक तीसरी तालिका न्यूजटैग (पीकेआईडी, न्यूज_आईडी, टैग_आईडी) जोड़ कर अपने टेबल डिज़ाइन को पूरी तरह से सामान्य कर सकते हैं और इसे इस प्रकार भर सकते हैं (अपना उदाहरण मानते हुए समाचार रिकॉर्ड रिकॉर्ड 100 है):

  1, 100, 1 1, 100, 7 1, 100, 34  

फिर, "कैसे" आपके प्रश्न का एक हिस्सा, आप टैग करने के लिए न्यूज़टैग के लिए समाचार में शामिल हो रहे हैं, जहां टैग्स। टैग आईडी = 34

इसे आज़माएं; मुझे यकीन है कि कुछ नमूना कोड का पालन होगा ..


Comments