多くのフィールドを持つテーブルがありますが、そのテーブルの 3 つのフィールドのすべての単語の数を取得したい
複数回存在するテーブル内のすべてのタイトルを見つける...そのために、このステートメントを発行できます
SELECT title, COUNT(title) AS NumOccurrences FROM users
GROUP BY titleHAVING ( COUNT(title) > 1 )
テーブルにtitle,url,description という3 つのフィールドがあるとします。基本的に、そのテーブルの最大時間のどの3つのフィールドにどの単語が格納されているかわかりません。
どの単語が最大時間を見つけたかを表示できるSQLステートメントを発行したい...のように
word-name occurance
--------- -------
sqlserver 300
jquery 120
ajax 110
SQL Server 2000/2005 のサンプル SQL を教えてください。
これが私の更新された完全なコードです.....見てください
IF OBJECT_ID('tempdb..#tempSearch') IS NOT NULL
BEGIN
DROP TABLE #tempSearch
END
CREATE TABLE #tempSearch(
ID INT,
Title nvarchar(4000),
Description ntext,
Url nvarchar(4000),
Type char(1))
INSERT INTO #tempSearch
SELECT * from vwProductSearch
INSERT INTO #tempSearch
SELECT * from vwContentSearch
SELECT Word,
COUNT(Word) AS TotalOccurrences,
COUNT(CASE WHEN Field = 'Title' THEN Word END) AS OccurancesInTitle,
COUNT(CASE WHEN Field = 'URL' THEN Word END) AS OccurancesInURL,
COUNT(CASE WHEN Field = 'Description' THEN Word END) AS OccurancesInDescription
FROM ( SELECT CONVERT(NTEXT, Title) AS Word, 'Title' AS Field
FROM #tempSearch
UNION ALL
SELECT CONVERT(NTEXT, URL), 'URL' AS Field
FROM #tempSearch
UNION ALL
SELECT CONVERT(NTEXT, Description), 'Description' AS Field
FROM #tempSearch
) As Fields
GROUP BY Word
HAVING COUNT(Word) > 1
DROP TABLE #tempSearch