sql >> データベース >  >> RDS >> Mysql

MySQL列のサブ文字列の出現をカウントします

    これにより、screen_namesのリストと、それらが使用するすべてのハッシュタグの総数が表示されます。

    SELECT  foo.screen_name, SUM(foo.counts) FROM 
      (
        SELECT screen_name, 
               LENGTH( tweet_text) - LENGTH(REPLACE(tweet_text, '#', '')) AS counts 
        FROM tweet_table 
      ) as foo 
    GROUP BY  foo.screen_name
    

    しかし....テーブルが巨大な場合、それは厄介なクエリです。単一のユーザーのカウントが必要な場合は、内部選択で特定のユーザーを指定する場合があります。このように:

    SELECT  foo.screen_name, SUM(foo.counts) FROM 
     (
        SELECT screen_name, 
             LENGTH( tweet_text) - LENGTH(REPLACE(tweet_text, '#', '')) AS counts 
        FROM tweet_table WHERE  screen_name = 'tweeter_user_1' 
     ) as foo 
    GROUP BY  foo.screen_name
    


    1. データベースにパスワードを保存するための好ましい方法

    2. MicrosoftAccessでレポートヘッダーにタイトルを追加する方法

    3. MYSQL選択クエリが0行を返す場合、別の選択クエリ?

    4. Oracle(+)演算子