Click here to Skip to main content
15,913,587 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
In my sql procedure I want to select dynamic columns in sql server

I give following coding but it is not working

SQL
SELECT IM_SERIALNO,IM_ITEMCODE,''VALUE'' AS +@PRICENAME '' ,IM_TAX FROM ITEM_MASTER WHERE
IM_COMPANYCODE  = +@COMPANYCODE
    AND     IM_BRANCHCODE   =@BRANCHCODE

How to get it please help me
Posted

Try this:
SQL
SELECT IM_SERIALNO, IM_ITEMCODE, 'VALUE' AS @PRICENAME, IM_TAX
FROM ITEM_MASTER
WHERE IM_COMPANYCODE  = @COMPANYCODE AND IM_BRANCHCODE =@BRANCHCODE

but i'm afraid about results...

'VALUE' AS @PRICENAME gives you:
@PRICENAME -column name<br />
VALUE -row <br />
VALUE -row <br />
VALUE<br />
VALUE<br />

Is it OK?

[EDIT]
The following 'query' shows how to use variables
SQL
DECLARE @PRICENAME VARCHAR(50)
DECLARE @COMPANYCODE VARCHAR(50)
DECLARE @BRANCHCODE VARCHAR(50)

SET @PRICENAME ='BlaBlaBla'
SET @COMPANYCODE ='UV2UV2UV2'
SET @BRANCHCODE ='q57438954rh8o9f'

SELECT  @PRICENAME AS 'PriceName' , @COMPANYCODE AS 'CompanyCode' , @BRANCHCODE AS 'SomeCode'


Result:
PriceName       CompanyCode     SomeCode<br />
BlaBlaBla	UV2UV2UV2	q57438954rh8o9f<br />


To select dynamic column, use:
SQL
IF @PRICENAME = 'SomeValue'
	BEGIN
		SELECT  [Columns1] ....
	END
ELSE
	BEGIN
		SELECT  [Column2] ...
	END


You can use a OBJECT_NAME[^] command to return the name of column too.

[/EDIT]
 
Share this answer
 
v3
Comments
devausha 18-May-12 7:00am    
Answer will not come the error is displays

Incorrect syntax near '@PRICENAME'.
Maciej Los 19-May-12 17:48pm    
Please, see my answer after update.
sunandandutt 18-May-12 7:09am    
i think value is coloum name. why you made it as string?
Well, you don't need the + signs before the @... in your SQL and the '' after @PRICENAME will cause you problems as well.
SQL
SELECT IM_SERIALNO,IM_ITEMCODE,''VALUE'' AS @PRICENAME ,IM_TAX FROM ITEM_MASTER WHERE
IM_COMPANYCODE  = @COMPANYCODE
    AND     IM_BRANCHCODE   =@BRANCHCODE
 
Share this answer
 
Comments
devausha 18-May-12 6:22am    
Thanks for ur repley. I am using your code, But the Error displays
"Incorrect syntax near ''."
Pete O'Hanlon 18-May-12 6:25am    
What full stop? There isn't one in the SELECT statement.
devausha 18-May-12 6:36am    
incorrect syntax near ''

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900