MySQL 一个查询效率的问题,求教。

比如我有这么个要求,后台可以选择一条记录“是否推荐”,“是否显示”或者“是否图文”我现在有两种想法,一种是以上“是否XX”有多少个,就建立多少个列,这样在检索的时候效率会... 比如我有这么个要求,后台可以选择一条记录“是否推荐”,“是否显示”或者“是否图文”

我现在有两种想法,一种是 以上“是否XX” 有多少个,就建立多少个列,这样在检索的时候效率会高些,不过我觉得有点麻烦。。

另外一种偷懒的就是用 Text 或 varchar 来存储例如:“是否推荐|是否显示|是否图文” 这类信息,然后通过 SQL 来检索是否包含这类文字。。

第一种方法我知道怎么写,第二种方法要怎么写?

比如 SELECT * FROM Table WHERE Condition="是否推荐|是否图文"

这里面的文字可能顺序或条件个数不一样,请问有什么方法能检索?
LIKE 效率似乎有点低,我那时候考虑过了。。 有没类似ASP里 instr(变量,"是否图文") 这样的?

不过效率要稍微好些的,谢谢了

----------------------------------------------------------------------

SELECT * FROM Table WHERE Condition="13" ,这个我知道,不过顺序可能会不一样啊,比如“31”怎么办?

有时候就是会 "1|4|2|3|5" 这样的,不一定是顺序
展开
 我来答
yagamizng
2010-04-23
知道答主
回答量:18
采纳率:100%
帮助的人:9.1万
展开全部
用1,2,3分别代表 是否推荐”,“是否显示”或者“是否图文
数据库用一个字段来INT字段(量小且方便索引)
分别插入 12 ,123,1,2,3 来实现,
显示 是否推荐|是否图文:
SELECT * FROM Table WHERE Condition="13"
今至电子科技有限公司
2024-08-23 广告
数据库备份是确保数据安全与业务连续性的关键环节。我们上海今至电子科技有限公司高度重视数据保护,定期执行全面的数据库备份策略。这包括使用先进工具和技术,对关键业务数据进行自动化备份,并存储在安全可靠的外部存储介质或云端。通过定期验证备份的完整... 点击进入详情页
本回答由今至电子科技有限公司提供
howlshadow
2010-04-21 · TA获得超过1381个赞
知道小有建树答主
回答量:1171
采纳率:100%
帮助的人:936万
展开全部
SELECT * FROM Table
WHERE Condition LIKE "%是否推荐%"
AND Condition LIKE "%是否图文%"
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chris_zcl
2010-04-27 · TA获得超过468个赞
知道小有建树答主
回答量:567
采纳率:0%
帮助的人:331万
展开全部
写存储过程吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式