10 sql t-sql sql-server sql-server-2008
如何从数据库中选择所有表中的所有列,例如:
Select * From *
Run Code Online (Sandbox Code Playgroud)
在SQL Server 2008中???
表列表非常大,并且有很多列,是否可以在不编写列名的情况下执行此操作?
或者可以创建一个返回表名称的选择.
Dav*_*vid 29
这个SQL会这样做......
DECLARE @SQL AS VarChar(MAX)
SET @SQL = ''
SELECT @SQL = @SQL + 'SELECT * FROM ' + TABLE_SCHEMA + '.[' + TABLE_NAME + ']' + CHAR(13)
FROM INFORMATION_SCHEMA.TABLES
EXEC (@SQL)
Run Code Online (Sandbox Code Playgroud)
Ash*_*ikh 10
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID where t.name = 'ProductItem' AND C.name like '%retail%'
ORDER BY schema_name, table_name
Run Code Online (Sandbox Code Playgroud)
试试这个,工作正常
SELECT * FROM INFORMATION_SCHEMA.COLUMNS
Run Code Online (Sandbox Code Playgroud)
然后你可以添加
WHERE TABLE_NAME LIKE '' AND COLUMN_NAME LIKE ''
Run Code Online (Sandbox Code Playgroud)