求高人给一个跨表模糊查询的SQL语句!可能有点难,非常感谢!
我接手了图书管的一个系统,现在领导要升级,但数据量非常非常大,有800多万条,大概1千多个分类现在分类表BookType里放着书的类别,字段是id,name,bookco...
我接手了图书 管的一个系统,现在领导要升级 ,但数据量非常非常大,有800多万条,大概1千多个分类
现在分类表 BookType里放着书的类别,字段是 id,name,bookcount, 一般name里内容就是“社会学”、“经济学”、“文学”
另外一个表是放书的资料BookList,也就是800多万条书的信息 id,bookname,year,money.......等等字段
现在想要说select出所有类别,并且按BookType.Name的内容去模糊查找BookList.BookName的数量更新显示在BookType.BookCount中
这样的SQL我应该要怎么写好呢?本人对太深奥的SQL不是太懂,还请高人指点,非常感谢! 展开
现在分类表 BookType里放着书的类别,字段是 id,name,bookcount, 一般name里内容就是“社会学”、“经济学”、“文学”
另外一个表是放书的资料BookList,也就是800多万条书的信息 id,bookname,year,money.......等等字段
现在想要说select出所有类别,并且按BookType.Name的内容去模糊查找BookList.BookName的数量更新显示在BookType.BookCount中
这样的SQL我应该要怎么写好呢?本人对太深奥的SQL不是太懂,还请高人指点,非常感谢! 展开
3个回答
展开全部
更多追问追答
追问
非常正确,就是这样,可是800多万条数据用 like的话非常慢,一个小时都出不来,有什么好的方式么?
貌似 like '%'||a.name||'%' 这样写在SQL2008里语法错误 呢
追答
按照种类建个临时表,比如把文学和社会学的拉出来建张表,或加上这个条件,分开来统计,800w应该还行的数据量呀
展开全部
BookType
id,name,bookcount
1,社会学,50
2,经济学,100
。。。。
BookList
id,bookname,year,money.....
1,A,2005,10
1,B,2014,100
2,C,1998,5
2,D,2000,6
。。。
数据是这样的?
id,name,bookcount
1,社会学,50
2,经济学,100
。。。。
BookList
id,bookname,year,money.....
1,A,2005,10
1,B,2014,100
2,C,1998,5
2,D,2000,6
。。。
数据是这样的?
更多追问追答
追问
BookType是,
BookList是下面这样
id,bookname,year,money
1, XXX社会学 , 2015 , 188.00
2, XXX经济学的XX与XX , 2015 , 188.00
3, XXX社会学 , 2015 , 188.00
4, XXX经济学的XX与XX , 2015 , 188.00
追答
书名有规律么?
还是想下面这样
XXX社会学,社会学XXX,X社会学XX
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你这个是什么数据库? 类别大约有多少个?
更多追问追答
追问
SQL2008 ,大概1千多个分类 ,书有800多万条,只找2015年的话有大概20万条这样
追答
你说的"模糊查找" 是什么意思?
bookname 一定包含bookType.name 吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询