我在表格中找到了很多数字。但只有一小部分给我找到整数。我正在寻找一些新的方法来找到这些,而不使用like
运算符。我知道这很简单,但我需要一种新方法。
4213076600
89013106904213076600
我想在以下查询中找到它:
SELECT *
FROM table_name
WHERE column_name in (value,value,value)
我搜索了网站,并了解了左()和右()函数,但不知道如何安排它们来获得结果
答案 0 :(得分:2)
您可以使用CONTAINS
more info:
SELECT *
FROM table_name
WHERE CONTAINS(column_name , '"*value*"')
对于CONTAINS
,您需要创建FULL TEXT INDEX
on the table。
答案 1 :(得分:0)
SELECT
*
FROM
table_name
WHERE
CHARINDEX(value1,column_name)>0
OR CHARINDEX(value2,column_name)>0
OR CHARINDEX(value3,column_name)>0
答案 2 :(得分:0)
DECLARE @table table (n varchar(20))
DECLARE @param1 varchar(20)
SET @param1 = '4213076600'
INSERT INTO @table (n)
SELECT '89013106904213076600'
SELECT n
FROM @table
WHERE RIGHT(n, len(@param1)) = @param1
修改强>
select *
from table_name
where right(column_name, len(value)) = value
答案 3 :(得分:-1)
SELECT left(column_name,length_of_value)
FROM table_name
WHERE RIGHT(column_name,length_of_value_given) IN (value,value,value)
这适用于IN
子句