การค้นหาสำหรับหลายคำลงไปในข้อความในภาษา sql เซิร์ฟเวอร์

0

คำถาม

ฉันมีข้อความรานสคริปต์(ข้อความ)ในคอลัมน์เป็นโต๊ะในภาษา sql เซิร์ฟเวอร์และฉันต้องการที่จะระบุว่ามีของบันทึกบรรจุหมายเลขประกันสังคม(ยังไม่มีตัวเลขในคอลัมน์นี้เพียงข้อความดังนั้นฉันต้องการเพื่อนคาถาออกจากตัวเลข). หรือจะพูดอีกอย่างฉันต้องตรวจสอบว่ามีของใช้เส้นสายมีอะไรกับส่วนผสมของเก้าตัวเลขมาจากสิบเป็นตัวเลข(หนึ่ง,สอง,สาม,สี่,ห้า,หก,เจ็ด,แปดเก้าศูนย์). ฉันอาจจะโอเคกับระบุตัวตนของผสมของสี่ตัวเลข(เมื่อสี่คนของหมายเลขประกันสังคม).

ฉันพยายาม Like '%one%' or Like '%two%' และดังนั้นแต่นั่นเดียวที่ชี้ตัดเดียวคำพูด ฉันต้องตามหาอย่างน้อยก็มีสี่คนอยู่ในจุดหมาอยู่ในที่เดียวกับข้อความ

search sql sql-server tsql
2021-11-24 02:41:49
1

คำตอบที่ดีที่สุด

0

คุณสามารถใช้เป็น aggregated EXISTS กับตูขยับปากแต่เป็นคำพูดของโต๊ะ

SELECT *
FROM YourTable t
WHERE EXISTS (SELECT 1
    FROM (VALUES
        ('zero'),
        ('one'),
        ('two'),
        ('three'),
        ('four'),
        ('five'),
        ('six'),
        ('seven'),
        ('eight'),
        ('nine')
    ) v(word)
    WHERE t.YourColumn LIKE '%' + v.word + '%'
    HAVING COUNT(*) >= 4
);

คุณสามารถเปลี่ยน >= 4 ต้อง = 9 เพื่อให้ตรงกันทั้งหมดที่จำนวนของคำพูด

2021-11-24 09:58:35

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่