设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 进阶讨论
›
Find_in_set的效率
返回列表
查看:
13019
|
回复:
4
[数据库]
Find_in_set的效率
[复制链接]
MYCODEIGNITER
MYCODEIGNITER
当前离线
积分
174
IP卡
狗仔卡
发表于 2013-2-5 14:02:47
|
显示全部楼层
|
阅读模式
跟大家探讨个问题,在涉及到一对多,或多对多的数据库设计的时候是采用中间表好呢,
还是直接用set字段存储,然后用Find_in_set函数查询呢?
哪种效率更高呢。
的
,
多
相关帖子
•
ci有数据库连接池的支持吗?
•
Jquery 对象的问题
•
一个伪静态的问题
•
关于一个hmvc的应用
•
大家有没有用ci写的后台系统啊
•
视图页的数组显示为以下格式,请问怎么循环才能出数结构
•
CI在BAE环境下URI的问题
•
如何让我的SQL更高效,插入成千上万条数据
•
求助个浏览器访问路径的问题
•
新人的第一次
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
显身卡
燃雲
燃雲
当前离线
积分
650
IP卡
狗仔卡
发表于 2013-2-6 07:15:47
|
显示全部楼层
FIND_IN_SET是在字串中进行寻找,效率会如何?
索引搜索与顺序搜索,速度相比如何?
视乎字串长短吧!
回复
支持
反对
使用道具
举报
显身卡
MYCODEIGNITER
MYCODEIGNITER
当前离线
积分
174
IP卡
狗仔卡
楼主
|
发表于 2013-2-6 19:24:39
|
显示全部楼层
开发中期,发现了这个问题,之前,一对多的关系,都是直接存在一个字段里,然后用FIND_IN_SET函数。
现在,有人说这个函数的效率不高。
所以想改下数据库结构。采用中间表的方法。。
回复
支持
反对
使用道具
举报
显身卡
燃雲
燃雲
当前离线
积分
650
IP卡
狗仔卡
发表于 2013-2-7 18:17:42
|
显示全部楼层
FIND_IN_SET不一定会慢,速度视乎字串长短。
索引搜索一般有额外开销,若平均长度不是很长,FIND_IN_SET也许会更快。
要注意的倒是FIND_IN_SET的第一个参数不可有“,”,否则后果难料。
回复
支持
反对
使用道具
举报
显身卡
jnlb438
jnlb438
当前离线
积分
49
IP卡
狗仔卡
发表于 2013-7-10 16:42:43
|
显示全部楼层
1.如果你的网页功能不是太复杂,一般一对多就行了,如果复杂点,如:一篇文章可能有多个标签,最好做个中间表,不然........呵呵!
2.只要字串不是太长,FIND_IN_SET的效率很高,这点不必太担心,至少比like高得多。
回复
支持
反对
使用道具
举报
显身卡
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页