日期:2014-05-17  浏览次数:20618 次

MYSQL查询语句
表A:

TIT KEY
大大小小 大大
大大不不 大大
天啊天啊 天啊
我是好汉 好汉
好汉天使 好汉 

如果tit里面包含了 key里面的字段 就显示tit里面的字段
上CSDN上问了几个大侠 用这个语句查询出来了:
select * from [表] where INSTR([tit], [key])>0
查询结果是:

TIT KEY
大大小小 大大
大大不不 大大
我是好汉 好汉
好汉天使 好汉

这个查询语句会把所有的tit里面 带key 里面值的都查询出来
我现在要的查询是
TIT KEY
大大小小 大大
大大不不 大大

或者

我是好汉 好汉
好汉天使 好汉

因为我页面要调用的话 只能调用本页面相关的 就是上面的只能选一个 而不是全部调出来 。

请大侠帮我!~~如何写出这个SQL语句!~~~
注:因为我的KEY字段里面的值很多 所以语句最好是用变量 或者直接用KEY字段。 谢谢


------解决方案--------------------
SQL code
--mysql 语法不懂,不过LZ下面的这个要求结果,有些让人费解。
/*
TIT KEY
大大小小 大大
大大不不 大大

或者

我是好汉 好汉
好汉天使 好汉*/

------解决方案--------------------
declare @text varchar(100) --('你给入的值')
select * from [表] 
where INSTR([tit], [key])>0
and key = @text
------解决方案--------------------
探讨

引用:
declare @text varchar(100) --('你给入的值')
select * from [表]
where INSTR([tit], [key])>0
and key = @text


直接用字段不行吗?

------解决方案--------------------
SQL code



set @key='大大';select * from [表] where INSTR([tit], @key)>0 and [key]=@key;

------解决方案--------------------
SQL code

declare @tab table(TIT varchar(10),KEY varchar(5))
insert @tab 
select '大大小小','大大' union all
selcet '大大不不','大大' union all
select '我是好汉','好汉' union all
select '天使好汉','好汉' 
go

declare  @key  varchar(5)
set @key='大大'
select * from @tab where INSTR([TIT], @key)>0 and [key]=@key;
----------------------------
--查询结果
/*
 TIT        KEY
 大大小小      大大
 大大不不       大大
*/