محاسبه تعداد تکرار یک کلمه در یک رشته
نویسنده: محمد سلیم آبادی
تاریخ: ۱۳۹۱/۱۰/۲۹ ۱۶:۴۰
آدرس: www.dntips.ir
| مطالب | ۳۶۹۴ |
| نویسندگان | ۲۷۶ |
| گروههای مطالب | ۱۰۲۴ |
| نقشههای راه | ۱۱۹ |
| دورهها | ۱۴ |
| اشتراکها | ۱۷۹۱۴ |
DECLARE @S VARCHAR(50) = 'ali ali ali ali hasan reza ali javad reza reza'
SELECT D.value, E.cnt
FROM (VALUES ('ali'),
('hasan'),
('reza'),
('javad')) AS D(value)
CROSS APPLY
(SELECT ' ' + REPLACE(@s, ' ', ' ') + ' ') AS C(String)
CROSS APPLY
(SELECT (LEN(String) - LEN(REPLACE(String, ' ' + D.value + ' ', ''))) / (LEN(D.value) + 2)) AS E(cnt)
ORDER BY cnt DESC;