@
sampeng @
incompatible 好吧,感谢 回复
同时我想到了比较好的办法,
既简单又高效 (自己实验过性能,同时认为有一定的便捷性)
这个其实我很早就在用,今天特意实验了下性能,测试了下 比 in 性能高出几十倍
结构如下:
[keywords]
id
name
[articles]
id
title
keywords
数据示例如下:
[keywords]
id name
1 苹果
2 安卓
3 游戏
4 wp
5 编程
6 CSS
7 JS
8 Javascript
[articles]
id title keywords
1 xxx /苹果/游戏/编程/js/
2 xxx /安卓/wp/编程/js/
3 xxx /游戏/CSS/编程/js/
4 xxx /CSS/wp/编程/js/
5 xxx /Javascript/wp/编程/js/
查出 id为5 的所有关键字
[SQLServer] mysql locate 代替 charindex
select * from keywords where CharIndex('/'+Name+'/',(select keywords from articles where id=5))>0
简单点就是如下:
select * from keywords where CharIndex('/'+Name+'/','/Javascript/wp/编程/js/')>0
如果不想破坏关系的话,可以保留 articleskeywords 关系表