我有办法将my SELECT
语句返回的值保存到SQL中的变量吗?
这就是我想要做的,首先我要SELECT
我要检查的所有列,所以在这种情况下ItemNames
ItemCategory
美国的项目。
SELECT `ItemName` where `ItemCategory´= 'US'
然后我想将ItemName
从上面的语句保存到SQL中的变量中,以便稍后在同一查询中使用它。像这样:
SELECT `DatabaseID` where `Project` NOT LIKE `myVariable`
谢谢你
答案 0 :(得分:3)
您可以尝试这样:
SELECT `ItemName` into @myVar FROM mytable where `ItemCategory´= 'US';
或
SELECT @myVar := `ItemName` FROM mytable where `ItemCategory´= 'US'
但是,您可以将查询组合成如下所示:
SELECT `DatabaseID` from mytable
where `Project` NOT IN (SELECT `ItemName` where `ItemCategory´= 'US')
答案 1 :(得分:1)
declare @var varchar(50);
SELECT @var = 'US'
SELECT * FROM Country where Name NOT LIKE @var
答案 2 :(得分:0)
您可以做的是将结果存储在变量表或临时表中,如下所示:
SQL Server:
create table #Temp
(
ItemName As Varchar(50)
--col2 AS Int,
--col3 As Varchar(20)
--...
)
<强>的MySQL 强>
CREATE TEMPORARY TABLE IF NOT EXISTS table1 (ItemName VARCHAR(50)) -- You can add more columns: (ItemName VARCHAR(50), col2 int NOT NULL DEFAULT 0, col3 VARCHAR(20),...)
然后将结果放在表#Temp或table1
中SQL Server
Insert Into #Temp SELECT ItemName FROM mytable where ItemCategory= 'US';
<强>的MySQL 强>
Insert Into table1 SELECT ItemName FROM mytable where ItemCategory= 'US';
然后你可以玩两个表并进行不同的操作(例如make join)