[英]Query to search substring in column
我有一個表,列中有一個子字符串值,我想編寫一個查詢來檢查輸入字符串是否包含子字符串。
我的桌子看起來像:
| company | host |
| ------- | ---------- |
| ebay | ebay.com |
| google | google.com |
| yahoo | yahoo.com |
我的輸入將類似於 www.ebay.com 或https://www.ebay.com或 www.qa.ebay.com 或 www.dev.ebay.com..
如果我得到任何輸入,我想返回第一條記錄。
我嘗試查看 CHARINDEX、INSTR,但它們反向工作。 我的情況是我有要在表中搜索的子字符串和實際字符串作為輸入。
任何幫助表示贊賞。
您可以為此使用like
,但您還需要字符串連接。 在 ANSI 標准 SQL 中,這看起來像:
select t.*
from t
where @inputstring like concat('%.', t.host)
其中@inputstring
是您輸入的字符串。
注意:您還可以使用連接中綴操作,通常是||
(標准)或+
。
您可以像這樣使用 SQL 通配符:
SELECT * FROM table WHERE host LIKE '%ebay.com';
去這個:
SELECT * FROM table WHERE host LIKE '%SearchString%'
它將拉出所有包含 SearchString 的行。
您可以使用 like 運算符來實現此目的。
從你的表中選擇 * 在哪里? 像 concat('%', company, '%');
范圍 ? 與您的意見。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.