Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Thực hiện Liên minh nếu bảng có những tên này tồn tại

Gói mã sau trong quy trình được lưu trữ:

DECLARE @DynamicTSQLStatement NVARCHAR(MAX);

SELECT @DynamicTSQLStatement = STUFF
(
    (
        SELECT N' UNION ALL SELECT * FROM ' + '[' + SCHEMA_NAME([schema_id]) + '].[' + [name] + ']'
        FROM [sys].[tables]
        WHERE [name] LIKE 'TRNS%'
        FOR XML PATH(''), TYPE
    ).value('.', 'NVARCHAR(MAX)')
    ,1
    ,10
    ,''
);

EXEC sp_executesql @DynamicTSQLStatement;

Bạn có thể thêm nhiều bộ lọc hơn khi tên bảng được trích xuất từ ​​[sys].[tables] xem.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hàm tổng hợp MIN và MAX trong SQL Server

  2. Sửa đổi lịch biểu tác nhân SQL Server (T-SQL)

  3. Truy vấn SQL để đếm các bản ghi mỗi tháng

  4. Ưu điểm của MERGE so với NẾU TỒN TẠI đơn giản là gì?

  5. Khi nào sử dụng Biểu thức bảng chung (CTE)