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

एक कॉलम में सभी मानों के अलग-अलग शब्दों को गिनने की क्वेरी

आसान तरीके से नहीं। यदि आप अधिकतम शब्दों को जानते हैं, तो आप कुछ ऐसा कर सकते हैं:

select substring_index(substring_index(p.post, ' ', n.n), ' ', -1) as word,
       count(*)
from post p join
     (select 1 as n union all select 2 union all select 3 union all select 4
     ) n
     on length(p.post) - length(replace(p.post, ' ', '')) < n.n
group by word;

ध्यान दें कि यह केवल तभी काम करता है जब शब्द एकल रिक्त स्थान से अलग होते हैं। यदि आपके पास सभी संभावित शब्दों का एक अलग शब्दकोश है, तो आप उसका भी उपयोग कर सकते हैं, जैसे:

select d.word, count(p.id)
from dictionary d left join
     posts p
     on concat(' ', p.post, ' ') like concat(' %', d.word, ' %')
group by d.word


  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. रूबी ऑन रेल्स इंस्टालेशन इश्यू (विंडोज)

  3. Mysql में समानार्थी कैसे बनाएं

  4. पहली बार तीन अद्वितीय मान sql के साथ दिखाई दें का चयन करें

  5. MySQL ने कहा:दस्तावेज़ीकरण # 1045 - उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध (पासवर्ड का उपयोग करके:नहीं)