MSSQL how to get value from table into variable ?

Posted on 2009-05-11
Last Modified: 2012-08-13
hi .. let's say i have a table and a variable.

SELECT email from parent where username = @pusername;  

will return the value that i need to have in @mail variable..

how can i set the @mail variable to get the value of the above sql query ? i also know that it will return only one result .
thanks in advance
Question by:cooking
  • 4
LVL 31

Expert Comment

ID: 24352999
declare @mail varchar(50)

select @mail=email from parent where username=@parentname

select @mail
LVL 31

Expert Comment

ID: 24353020
you are sure about that your query will return only one value so there is no problem at all, since there is no concept like array in SQL Server so if your query will return more than one row in above query, only last email address will be stored in @mail variable.
LVL 31

Accepted Solution

RiteshShah earned 400 total points
ID: 24353029
sorry I did typo in WHERE clause in above example, it should be like below snippet, even check your table and field name before you run.

declare @mail varchar(50)

select @mail=email from parent where username = @pusername;

select @mail

Assisted Solution

bull_rider earned 100 total points
ID: 24353047
You can do this in two ways. One which RiteshShah has suggested and the other way is to use the Set option to store a value into a variable.

Declare @mail nvarchar(255)

Set @mail = (SELECT email from parent where username = @pusername)

Select @mail

You can use anyone of them accotding to your convenience.
LVL 31

Expert Comment

ID: 24353082
generally in the situation Author has, I would go for SELECT not for SET, nothing much different but just wanted to stick with ANSI standard, basically SET is used to assign static value and SELECT is for getting value in variable from QUERY. have a look.

Featured Post

Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

I'm trying, I really am. But I've seen so many wrong approaches involving date(time) boundaries I despair about my inability to explain it. I've seen quite a few recently that define a non-leap year as 364 days, or 366 days and the list goes on. …
In this article we will get to know that how can we recover deleted data if it happens accidently. We really can recover deleted rows if we know the time when data is deleted by using the transaction log.
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.
Viewers will learn how to use the INSERT statement to insert data into their tables. It will also introduce the NULL statement, to show them what happens when no value is giving for any given column.

749 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question