一个比较笨的全文搜索的例子(分析结构用)-模糊查找

 1  
 2 
 3 
 4  --在所有的char类型的列中模糊查找某个值。
 5 --**注意预先切换到当前的数据库中。
 6 DECLARE  @TABLE_CATALOG NVARCHAR(MAX)--数据库名
 7   ,@TABLE_SCHEMA NVARCHAR(MAX)--架构名
 8   ,@TABLE_NAME NVARCHAR(MAX)--表名
 9   ,@COLUMN_NAME NVARCHAR(MAX)--列名
10   ,@SQL NVARCHAR(MAX)--动态sql语句
11   ,@find_char nvarchar(max)--查找的内容变量
12 --*********************************************************************************
13   set @find_char='1月22日支办公费、车修、过路费、宿费等款'--输入查找的内容
14 --*********************************************************************************
15 declare @t table (TABLE_CATALOG NVARCHAR(MAX)
16   ,TABLE_SCHEMA NVARCHAR(MAX)
17   ,TABLE_NAME NVARCHAR(MAX)
18   ,COLUMN_NAME NVARCHAR(MAX))--定义表变量
19 DECLARE C1 CURSOR FOR--定义游标,从INFORMATION_SCHEMA.COLUMNS和INFORMATION_SCHEMA.TABLES两个系统视图中获取表和字段的信息,用于下面构建动态sql语句
20   SELECT A.TABLE_CATALOG
21     ,A.TABLE_SCHEMA
22     ,A.TABLE_NAME
23     ,A.COLUMN_NAME
24   FROM INFORMATION_SCHEMA.COLUMNS A--注意在这里修改数据库名称
25   JOIN INFORMATION_SCHEMA.TABLES B--注意在这里修改数据库名称
26   ON  A.TABLE_CATALOG=B.TABLE_CATALOG
27    AND A.TABLE_SCHEMA=B.TABLE_SCHEMA
28    AND A.TABLE_NAME=B.TABLE_NAME
29         WHERE   B.TABLE_TYPE='BASE TABLE'--仅仅查询表,不包括视图,可根据实际情况修改
30     AND 
31      A.TABLE_NAME  IN 
32      (select a.name--,b.rowcnt--,object_name(b.id),a.id 
33      from sysobjects a join sysindexes b
34      on a.id=b.id 
35      where a.xtype='u' and b.indid<2 
36                      --and a.name like '%zy%'--限定表的名称
37                      --and rowcnt <=10000--限定记录条数
38      )
39     AND
40      (DATA_TYPE LIKE N'%CHAR' or DATA_TYPE like N'%text')--仅仅查找CHAR类型的列CHAR,VARCHAR,NCHAR,NVARCHAR四种情况,可根据实际情况修改
41 
42 OPEN C1
43 FETCH NEXT FROM C1 INTO    @TABLE_CATALOG
44         ,@TABLE_SCHEMA
45         ,@TABLE_NAME
46         ,@COLUMN_NAME
47 WHILE @@FETCH_STATUS=0
48 BEGIN
49  SET @SQL=
50     'IF EXISTS (SELECT ['+@COLUMN_NAME+'] FROM ['+@TABLE_CATALOG+'].['+@TABLE_SCHEMA+'].['
51     +@TABLE_NAME+'] WHERE ['+@COLUMN_NAME+'] like ''%'+@find_char+'%'')'--模糊查找
52     +'print ''select * from ['' + @TABLE_CATALOG+''].['' + @TABLE_SCHEMA+''].['' + @TABLE_NAME + ''] where ['' + @COLUMN_NAME + ''] like %''+@find_char+''%'''--构建动态sql语句,生成可以直接查询的语句。
53     EXEC SP_EXECUTESQL @SQL--执行动态sql语句
54       ,N'@TABLE_CATALOG NVARCHAR(MAX) OUT
55       ,@TABLE_SCHEMA NVARCHAR(MAX) OUT
56       ,@TABLE_NAME NVARCHAR(MAX) OUT
57       ,@COLUMN_NAME NVARCHAR(MAX) OUT
58       ,@find_char nvarchar(max) out'
59       ,@TABLE_CATALOG  OUT
60       ,@TABLE_SCHEMA  OUT
61       ,@TABLE_NAME OUT
62       ,@COLUMN_NAME OUT
63       ,@find_char  out--生成的查询语句仍然需要手工加上单引号
64    FETCH NEXT FROM C1 INTO   @TABLE_CATALOG
65        ,@TABLE_SCHEMA 
66        ,@TABLE_NAME
67        ,@COLUMN_NAME
68 END
69 CLOSE C1
70 DEALLOCATE C1
71   

 

转载于:https://www.cnblogs.com/bgbird/p/4959228.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256428.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

未能加载文件或程序集“Poderosa.Core

https://github.com/poderosaproject/poderosa上下载的一个开源工程&#xff0c;程序是在VS2012上编译的&#xff0c;然后VS2015转换后编译失败&#xff0c;报“未能加载文件或程序集“Poderosa.Core......”的错误 猜测是转换的时候引用丢失了&#xff0c;于是添加引用 F:\...…

个人阅读作业Week7

上了大学之后其实就没有很多时间去读书了&#xff0c;与其说软工作业时给我们布置了一些任务&#xff0c;但是也是在另一方面让我们得到了更多的知识的填补&#xff0c;因为平常能够接触的书籍很少&#xff0c;平常自己也是一个很不爱看书的人&#xff0c;所以我觉得这样的作业…

图像的像素、分辨率、像元尺寸、大小、清晰度的关系

图像的像素&#xff1a; 图像是由像素所组成的&#xff0c;像素的多少表明摄像机所含有的感光元件的多少。像素是指一张图像中所有的像素数之和。 图像分辨率&#xff1a; 是指表达方式也为“水平像素数垂直像素数” 像元尺寸&#xff1a; 是指一个像素在长和宽方向上所代表的实…

机器学习——支持向量机SVM实例(兵王问题,SVM求解步骤以及思路,不求解不编程)

目录 一、问题描述&#xff08;兵王问题&#xff09; 二、步骤 1、获得数据 2、样本划分&#xff08;训练样本和测试样本&#xff09; 3、训练样本得到SVM模型 ​ 1&#xff09;数据处理 2&#xff09;训练样本和测试样本归一化 3&#xff09;选择核函数和调参 4&#…

单摄像机对于二维平面的测量

二维平面测量 首先我们应该知道什么是二维平面&#xff0c;二维平面简单的说就是只含有x,y坐标系的平面&#xff0c;在z轴上没有当量。这种一般出现在对于一个平面的宽度&#xff0c;长度&#xff0c;变形的测量&#xff0c;一般应用较多的场合是对一个规则的机械零件进行尺寸…

十六进制,输出的时候怎样控制所输出字母的大小写。

the first&#xff1a;printf("%x",10);printf("%X",10); 可以用x的大小写来控制&#xff0c;所输出字符的大小写&#xff0c;真是一个巧妙的技能。转载于:https://www.cnblogs.com/A-FM/p/4970114.html

Django的安装

Django是Python的一款Web开源框架&#xff0c;所以Django是依赖于Python的&#xff0c;首先要安装Python。 Python安装 官网地址&#xff1a;http://www.python.org/download/ 在安装Python的时候&#xff0c;会有人纠结&#xff0c;是要安装Python2还是Python3呢&#xff1f;其…

机器学习——支持向量机SVM之多分类问题

目录 方法1&#xff1a;改造目标函数与限制条件 方法2&#xff1a;一类对其他类&#xff08;类数为N&#xff0c;需要建立N个SVM模型&#xff09; 情形1&#xff1a;多个SVM模型结果交集得出确切归类 情形2&#xff1a;多个SVM模型结果交集没有得出确切归类 方法3&#xff…

python3版本无法加载reload解决办法NameError: name 'reload' is not defined

很多人在运行八点法求基础矩阵问题时&#xff0c;都会遇到NameError: name ‘reload’ is not defined的错误 只需在最前面加上from imp import reload即可

hdu 2612 Find a way(bfs)

Problem DescriptionPass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally. Leave Ningbo one year, yifenfei have many people to meet. Especially a good friend Merceki. Yifenfei’s home is at the countryside, but Merceki’s home is in …

定义类或对象

学习总结&#xff1a; 工厂方式 原始的方式&#xff08;对象创建后动态定义对象的属性&#xff09; var oCar new Object; oCar.color "blue"; oCar.doors 4; oCar.mpg 25; oCar.showColor function() {alert(this.color); };创建对象 car&#xff0c;属性&…

七桥问题

怎么不重复地走完连接两座岛和陆地的七座桥&#xff1f; 简化为以下&#xff1a; 答案是不能走完的。 奇点&#xff1a;这个点有奇数条线汇聚于此 偶点&#xff1a;这个点有奇数条线汇聚于此 七桥问题——一笔画问题 若一个图形全部是偶点或者只有2个奇点&#xff08;没有…

office2016打开PPT出现解决VBE6EXT.OLB不能被加载问题的解决办法

第一步 打开路径C:\Program Files (x86)\Microsoft Office\root\VFS\ProgramFilesCommonX86\Microsoft Shared\VBA。找到VBA只要是默认安装路径均一样。 第二步 打开VBA6找到VBE6EXT.OLB将其复制到VBA7.1中。 第三步 打开VBA7.1找到VBE7.DLL将其复制到VBA6中。 第四步…

20151118小问题

1.模板引擎 百度百科:模板引擎(这里特指用于Web开发的模板引擎)是为了使 用户界面与业务数据(内容)分享而产生的,它或以生成特定格式的文档,用于网站的模板引擎就会产生一个标准的HTML文档. 目的:生成一个标准的HTML文档. 概念:模板引擎不属于特定技术领域,它是跨领域跨平台的概…

机器学习——人工神经网络之发展历史(神经元数学模型、感知器算法)

目录 一、神经元的数学模型 ​ 二、感知器算法&#xff08;SVM算法前身&#xff09; 1、目的 2、流程 >>>问题1&#xff1a;下图w和b的调整是什么意思&#xff1f; 3、算法的有效性验证 1&#xff09;原算法 2&#xff09;增广矩阵 3&#xff09;修改后的算法…

PHP 基础知识-数组

PHP 的数组主要分为&#xff1a; 索引数组 - 带有数字索引的数组关联数组 - 带有指定键的数组多维数组 - 包含一个或多个数组的数组 索引数组&#xff1a;有两种创建索引数组的方法&#xff1a;索引是自动分配的&#xff08;索引从 0 开始&#xff09;&#xff1a; 第一…

打开word2016总是出现很抱歉,此功能看似中断需要修复。。问题解决办法

第一步 打开运行窗口&#xff0c;在电脑桌面左下角有个圆圈点击进去&#xff0c;输入regedit&#xff0c;即可进入。 第二步 打开HKEY_CURRENT_USER中的SOFTWARE 第三步 找到HKEY_CURRENT_USER\SOFTWARE\Microsoft\Office\16.0\Word\Options项如图红色箭头标示。然后点击O…

机器学习——人工神经网络之多层神经网络(多层与三层)

目录 一、多层神经网络 1、多层神经网络数学模型 2、数学模型中的非线性函数fai 1&#xff09;非线性函数fai存在的意义 2&#xff09;非线性函数fai具体是什么&#xff1f; 3、多层神经网络与单层神经网络的区别与改进 1&#xff09;单层神经网络数学模型 2&#xff0…

noip2012-day2-t2

【问题描述】 在大学期间&#xff0c;经常需要租借教室。大到院系举办活动&#xff0c;小到学习小组自习讨论&#xff0c;都需要向学校申请借教室。教室的大小功能不同&#xff0c;借教室人的身份不同&#xff0c;借教室的手续也不一样。 面对海量租借教室的信息&#xff0c;我…