一道笔试题,高手请进

jlzan1314 2009-09-24 02:11:24
描述:
使用参数查询数据库得到所要的记录,参数的个数是变化的
比如说id,name,time,参数不等,可能就有一个id,可能有id,name

搜索出结果,
但是不能使用select * from info where id='$id' and name='$name'等等 说这个10w的数据就会变慢。

我现在脑子里没有思路,请高手帮忙。
...全文
297 34 打赏 收藏 转发到动态 举报
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
json007 2009-11-19
  • 打赏
  • 举报
回复
lz把那三道面试题想复杂了 只有第三题有点难度
hjzhangjing1 2009-09-25
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 dzxccsu 的回复:]
那就是如何写SQL语句了,不能用=,能用LIKE不?
[/Quote]"="都不能 LIKE肯定更不能
我觉得应该查出适合一个特定参数进行处理
在进行指定查询
YHL27 2009-09-25
  • 打赏
  • 举报
回复
学习!!
程序猿之殇 2009-09-25
  • 打赏
  • 举报
回复
name模糊匹配,用=号是不行的,可以用POSITION内置函数或者like或者全文搜索
datatime时间段匹配,可以分析一下,时间段,多利用mysql内置时间函数

and语句肯定是要用的多个条件查询,不用and只能用子查询,也就是说在查询出的条件里进行二次查询,感觉出问题的也不是很懂,呵呵.
fxs_2008 2009-09-24
  • 打赏
  • 举报
回复
select * from info where id='$id' and name='$name'

用不用*区别不明显

后面不用and,不知它是如何查询的

至于优化,有很多种,估计出题那都不一定弄明白

标准的sql有优化专门一章
quege 2009-09-24
  • 打赏
  • 举报
回复
本公司只负责招聘,不负责培训
//这只能说明他也不懂哦,要是懂的话一般人会回答的。
quege 2009-09-24
  • 打赏
  • 举报
回复
本公司只负责招聘,不负责培训
//哈哈~~又见垃圾公司!
foolbirdflyfirst 2009-09-24
  • 打赏
  • 举报
回复
[Quote=引用 24 楼 jlzan1314 的回复:]
谢谢大家,既然大家都不清楚,我想也不是我的问题了,
其实我问他答案来这,他说“本公司只负责招聘,不负责培训”。要我自己去找资料,所以来这里发帖了。
[/Quote]
他说“本公司只负责招聘,不负责培训”
====================
lz应该庆幸没进去,在这种人手下做事会痛不欲生。。呵呵
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
谢谢楼上,,,可能我把问题想复杂了。
foolbirdflyfirst 2009-09-24
  • 打赏
  • 举报
回复
select * from info where id='$id' and name='$name' 性能不好只能是因为你select *了,只要where后id或者name其中之一为索引,则不存在这样用就性能不好的问题。
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
谢谢大家,既然大家都不清楚,我想也不是我的问题了,
其实我问他答案来这,他说“本公司只负责招聘,不负责培训”。要我自己去找资料,所以来这里发帖了。
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
大体意思就是:
搜索功能,多个条件的。用这样的语句“select * from info where id='$id' and name='$name'”他说性能不好不给用。
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
并不是like ,题目好长,我只是把要点打出来了

id int 这个要用完全匹配
name varchar(255) 这个要用模糊匹配
time datetime 这个是时间段匹配

后面还有些字段(省略。。),所以我严重怀疑里面有会php的没有。

题目上已经讲了的很清楚了.所以我排除你3楼讲的。
dehexiao 2009-09-24
  • 打赏
  • 举报
回复
不清楚题目意思!
foolbirdflyfirst 2009-09-24
  • 打赏
  • 举报
回复
没搞明白对方考得是什么问题
怀疑问题如我在#3楼所说,
应该网 2009-09-24
  • 打赏
  • 举报
回复
出题的人水平有限,要么没表达清楚,要么。。。。。
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
感觉也不像刁难,题目认真的很。
不过讲真的,不尊重人,不考也罢。
dzxccsu 2009-09-24
  • 打赏
  • 举报
回复
故意刁难你的,不做也摆!
quege 2009-09-24
  • 打赏
  • 举报
回复
进来学习
jlzan1314 2009-09-24
  • 打赏
  • 举报
回复
ls 有点到点子上了,讲真的这道题,除了索引我也没想到其他方法了。用索引还是用到了select * from info where 字段=‘值’ and 。。。 什么的吧,最多速度快一些。把我头想通了,也没想出来。
加载更多回复(14)

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧