都内で働くSEの技術的なひとりごと / Technical soliloquy of System Engineer working in Tokyo

都内でサラリーマンやってます。SQL Server を中心とした (2023年からは Azure も。) マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。英語の勉強のため、英語の

dm_fts_parser について検証してみた

 この記事で書いた SQL Server の dm_fts_parser について検証してみたいと思います。dm_fts_parser に関してはここを参照してください。早速、下記のクエリで検証してみたいと思います。(検証環境:Windows 8 Enterprise Ed. , SQL Server 2012 SP1 )

SELECT * FROM sys.dm_fts_parser (' "エナラプリル10 mg 1×,ピオグリタゾン30 mg 1×,グリメピリド4 mg 2×" ', 1041, 0, 0)

f:id:koogucc11:20130825145814j:plain

 きちんと認識できていますね。2008はどうだったかなぁ。場合によってはうまく認識できないものがあったような記憶が....もう覚えていません....

SELECT * FROM sys.dm_fts_parser (' "入院1か月前より倦怠感が出現し徐々に増悪,2週間前に足のむくみに気付き,1週間前にはいつもの靴が履けなくなり前医受診。ネフローゼ症候群疑いで8月25日当院紹介入院となった。週単位で増悪傾向の浮腫あり。圧痕性浮腫で,下肢に目立つが顔面・上肢にも見られ全身性。靴下の跡がつくがすぐに消える。皮膚の熱感や疼痛の自覚なし。心不全症状:なし。肝不全症状:なし。先行感染症状:なし。" ', 1041, 0, 0)

f:id:koogucc11:20130825150035j:plain

 漢字が混在すると、上記のような結果になります。例えば、『肝不全』などを一つの単語として認識させる術はあるのでしょうか?これができないと、『肝不全』と入力したときに、CONTAINS句でヒットしないんですよね..何かいい方法はないですかね?まじめに調査したこともないので、いまいち理解できていません、SQL Server全文検索機能。2014だったら、もしかして....