• sqlserver 根据内容,查询表和列名字 IT


    --定义参数
    DECLARE @TYPE NVARCHAR(50)    SET @TYPE = 'varchar'
    DECLARE @Express NVARCHAR(50)    SET @Express = 'like ''%chao.ma%'''

    --定义游标->表+栏位
        
    DECLARE MY_CURSOR CURSOR FOR         
    SELECT  t.[name] AS [table],c.[name] AS [column]
    FROM    sys.tables t
    INNER JOIN sys.columns c ON t.object_id = c.object_id
    WHERE   c.system_type_id = TYPE_ID(@TYPEAND t.[name] LIKE '%User%'  
    ORDER BY t.[name] ,c.[name]

    DECLARE @table NVARCHAR(50) ,    @column NVARCHAR(50)
    DECLARE @sql NVARCHAR(max)
    DECLARE @sql2 NVARCHAR(max)
    OPEN MY_CURSOR
        FETCH NEXT FROM MY_CURSOR INTO @table,@column
        WHILE @@FETCH_STATUS = 0 
            BEGIN
                
                SET @sql='SELECT *  FROM ['+@table +'] WHERE [' + @column+''+@Express
                SET @sql2='IF EXISTS('+@sql+')'+' PRINT '''+REPLACE(@sql,'''',''''''+ ''' '
            
                EXEC SP_EXECUTESQL @sql2    
                FETCH NEXT FROM MY_CURSOR INTO @table,@column
            END
        CLOSE MY_CURSOR
        DEALLOCATE MY_CURSOR
        

     显示结果,可看到有记录的sql语句组合:

    SELECT *  FROM [User] WHERE [AD] like '%chao.ma%'
    SELECT *  FROM [UserBatchImport] WHERE [AD] like '%chao.ma%'
     
  • 相关阅读:
    ssi服务器端指令
    json格式的转换为json字符串函数
    接口测试基础和jmeter
    【JZOJ6274】梦境
    【JZOJ6275】小L的数列
    【luoguP4721】分治 FFT
    【luoguP3868】猜数字
    中国剩余定理与扩展中国剩余定理
    【JZOJ6277】矩阵游戏
    【JZOJ6271】锻造 (forging)
  • 原文地址:https://www.cnblogs.com/machaofast/p/2314288.html
Copyright © 2020-2023  润新知