I want to search a text in a table without knowing its attributes. Example : I have a table Customer,and i want to search a record which contains 'mohit' in any field without knowing its column name.
问问题
149 次
3 回答
0
于 2012-09-23T23:43:55.417 回答
0
您正在寻找全文索引
使用示例Contains
select ColumnName from TableName
Where Contains(Col1,'mohit') OR contains(col2,'mohit')
注意 -您可以使用从 sys.Columns 查询计算的列名将上述自由文本查询转换为动态查询
还要检查下面
您还可以从以下查询中检查所有列名
Select Name From sys.Columns Where Object_Id =
(Select Object_Id from sys.Tables Where Name = 'TableName')
Double-WildCard LIKE 语句不会加快查询速度。
于 2012-06-24T07:02:52.597 回答
0
如果您想对表格进行全面搜索,您肯定知道表格的结构。考虑到表有字段id
、name
、age
和address
,那么您的 SQL 查询应该是这样的:
SELECT * FROM `Customer`
WHERE `id` LIKE '%mohit%'
OR `name` LIKE '%mohit%'
OR `age` LIKE '%mohit%'
OR `address` LIKE '%mohit%';
于 2012-06-24T06:37:07.820 回答