在SQL中搜索最常见的单词

时间:2013-08-10 20:59:57

标签: php sql sql-server dreamweaver

我目前正在设置我的第一个实施SQL的网站。

我希望使用表格中的一列来识别列中最常用的单词。

所以,那就是说:

// TABLE = STUFF

// COLUMN0 = Hello there
// COLUMN1 = Hello I am Stuck
// COLUMN2 = Hi dude
// COLUMN3 = What's Up?

因此,我希望返回一串“HELLO'作为最常见的词。

我应该说我使用PHP和Dreamweaver与SQL服务器进行通信,因此我将SQL查询放在Recordset的相关SQL行中,结果因此放在网站上。

任何帮助都会很棒。

由于

1 个答案:

答案 0 :(得分:0)

您可以像这样计算PHP中最常用的单词:

function extract_common_words($string, $stop_words, $max_count = 5) {
  $string = preg_replace('/ss+/i', '', $string);
  $string = trim($string); // trim the string
  $string = preg_replace('/[^a-zA-Z -]/', '', $string); // only take alphabet characters, but keep the spaces and dashes too…
  $string = strtolower($string); // make it lowercase

  preg_match_all('/\b.*?\b/i', $string, $match_words);
  $match_words = $match_words[0];

  foreach ( $match_words as $key => $item ) {
      if ( $item == '' || in_array(strtolower($item), $stop_words) || strlen($item) <= 3    ) {
          unset($match_words[$key]);
      }
  }  

  $word_count = str_word_count( implode(" ", $match_words) , 1); 
  $frequency = array_count_values($word_count);
  arsort($frequency);

  //arsort($word_count_arr);
  $keywords = array_slice($frequency, 0, $max_count);
  return $keywords;
}