Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何在SQL Server的select语句中将字符串连接到列名之前?_Sql Server_Vb.net - Fatal编程技术网

Sql server 如何在SQL Server的select语句中将字符串连接到列名之前?

Sql server 如何在SQL Server的select语句中将字符串连接到列名之前?,sql-server,vb.net,Sql Server,Vb.net,在我的应用程序中,使用SQL查询检索表的列名。在列名之前我想在列名之前连接字符串,那么所有列名都必须连接字符串,如何在SQL中连接列名之前的字符串 如果您有任何疑问,请提前感谢 select somecolumn from sometable 您可以通过执行以下操作获得“之前的字符串” 请参阅以下参考资料这可能对您有所帮助- ALTER FUNCTION dbo.getConcatValues ( @table_name NVARCHAR(100) ) RETURNS NVARCHAR

在我的应用程序中,使用SQL查询检索表的列名。在列名之前我想在列名之前连接字符串,那么所有列名都必须连接字符串,如何在SQL中连接列名之前的字符串

如果您有任何疑问,请提前感谢

select somecolumn from sometable
您可以通过执行以下操作获得“之前的字符串”


请参阅以下参考资料

这可能对您有所帮助-

ALTER FUNCTION dbo.getConcatValues
(
    @table_name NVARCHAR(100)
)
RETURNS NVARCHAR(MAX)
AS
BEGIN

    DECLARE @SQL NVARCHAR(MAX)

    SELECT @SQL = STUFF((
        SELECT ', ' + c.name
        FROM sys.columns c
        WHERE c.[object_id] = OBJECT_ID(@table_name)
        FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 2, '')

    RETURN @SQL

END
GO

SELECT dbo.function_name('dbo.table1')

我不知道你到底在问什么。。。。。您是否可以显示一些您试图执行的操作的代码示例,并解释您遇到的问题??显示您的
使用SQL查询检索表的列名请以不同的方式询问或显示一些示例代码以了解您正在查找的内容。您是否试图使表名显示在列之前?
ALTER FUNCTION dbo.getConcatValues
(
    @table_name NVARCHAR(100)
)
RETURNS NVARCHAR(MAX)
AS
BEGIN

    DECLARE @SQL NVARCHAR(MAX)

    SELECT @SQL = STUFF((
        SELECT ', ' + c.name
        FROM sys.columns c
        WHERE c.[object_id] = OBJECT_ID(@table_name)
        FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 2, '')

    RETURN @SQL

END
GO

SELECT dbo.function_name('dbo.table1')