SQL基础:《SQL HACKS》第3章——文本处理,总共列举了4个tips,不用Like搜索关键词、跨列搜索关键字等,下述为我对这4个tips的评析。
1、不用Like搜索关键词
情景描述:字符串模糊查找通常都会使用like。
解决方案:使用数据库支持的全文检索功能。
评析:一般应用我们使用like进行字符串模糊匹配完全可以满足功能、性能需求,但是需要注意like使用方式(通配符在前的like条件是不会使用索引的);对于特殊的应用,如知识库等则应使用数据库全文检索功能,如postgresql的tsvector类型。
2、跨列搜索字符串
情景描述:求解给定字符串S是否与数据库现有的某几列(c1,c2,..cn)匹配老;
解决方案:可以使用or进行连接,判断S是否与给出的每列匹配;也可以使用将c1,c2,cn连接起来判断是否包含S;也可以使用in查询;
评析:跨列搜索字符串除了or连接还有其它很多种实现方式。
3、求解重组字
情景描述:假设现有一张字典表,里面存储了所有单词,如tea,eat,我们发现tea和eat都是有e, a, t组合合成,则表示eat和tea是重组字。现在要求解字典表中eat的重组字有几个?
解决方案:通过数学手段(散列函数、二次散列方函数等)使得输入tea、eat可以得到同一个值value,则只要字典表自连以value作为where条件即可。
评析:数学好真的很关键,只有很强的数学功底才能确保tea、eat的函数值value是一致,其它的单词如sea则是其它的函数值。
4、排序电子邮件
情景描述:对电子邮件账户作升序排序;
解决方案:通过字符串函数截取@之前的字串,并对截取后的字串进行升序排序即可。
评析:熟练掌握数据库的字符串函数可以大大提高工作效率,如常用的字符串连接、取长度,截取字符串,字符串查找,字符串替换等。
本章总评:
本章的几个tip是无非是告诉我们熟练使用数据库的字符串函数会有意外的收获,因此我们至少要熟知一种数据库的字符串操作。
分享到:
相关推荐
本人正在读O'reilly的SQL Hacks这本书,深深的被这些sql技巧所吸引。作为一个程序员,如果能够在合适的地方用上精巧的sql语句,能够给开发带来无与伦比的轻巧与快捷。如果你的基础较好的话,应该只用看这个读书笔记...
本书包含了100个排序、筛选、打乱数据的技巧,大大增强了传统SQL语句的功能。通过本书,你可以学习到: ● 从命令行和程序往数据库发送SQL命令。 ● 使用高级的联合、过滤和分组技术,为数据报表获得数据。 ● 解决...
sql语言学习圣经 老外写的 书不厚但是很好,值得细细读
5. 调试技巧:本书可能会分享一些调试技巧和高级技巧,比如如何使用GDB的文本用户界面(TUI)功能,怎样利用GDB的脚本功能自动化调试过程,以及如何处理多线程和异步编程中的调试难题。 6. 其他调试工具:除了GDB...
《SQL.Hacks.Nov.2006》这本书聚焦于SQL语言在主流数据库系统中的高效应用,涵盖了Oracle、MySQL和SQL Server等多个平台。SQL(Structured Query Language),即结构化查询语言,是用于管理关系数据库的标准语言,...
SQL_HACKS:100个业界最尖端的技巧和工具,电子书,高清版
由于提供的内容不足以推断出具体的知识点,我将基于标题《Debug Hacks中文版—深入调试的技术和工具》来构建相关知识点。请注意,以下内容是基于假设的文档内容,实际的知识点可能与此有所不同。 在计算机科学中,...
通过阅读《SQL Hacks》,你不仅可以掌握SQL的基础知识,还能学习到许多专家级别的技巧,这些技巧将使你在处理数据时更加得心应手。无论是在商业智能、数据分析还是软件开发领域,这本书都能成为你不可或缺的参考资料...
SQL HACKS 100个业界最尖端的技巧和工具,好不容易找到的资源
SQL_HACKS:100个业界最尖端的技巧和工具,高清,好不容易找到
### Google.Hacks:探索和利用全球信息资源的技巧和工具 #### 核心知识点概览 本书《Google.Hacks》是一本深入探索Google搜索引擎高级应用技术的书籍,它不仅介绍了如何高效地使用Google进行信息搜索,还展示了...
在IT领域,文本编辑器Vim、流处理工具Sed和Awk以及操作系统Linux是三个极其重要的基础工具。这些工具的高效使用对于任何系统管理员、开发者或是IT专业人员来说都是必不可少的技能。以下是对这三个主题的详细解释: ...
4. 事件处理:Swing Hacks会讲解如何高效地处理用户交互事件,包括键盘事件、鼠标事件和动作事件。这些技巧能帮助开发者构建响应快速且用户友好的应用。 5. 模型-视图-控制器(MVC)模式:Swing遵循MVC设计模式,...
6. **文本处理(Ch07-Text)**: Swing提供了JTextComponent家族用于处理文本输入和显示。这部分内容会涉及如何添加语法高亮、自动完成和搜索替换等功能。 7. **本地集成和打包(Ch11-NativeIntegrationAndPackaging...
根据提供的信息,“50 Android Hacks.pdf”似乎是一份关于Android系统高级技巧和优化方法的手册。虽然在给出的部分内容中并未直接提及具体的技术细节,但从文件标题、描述及标签可以推断出这份文档主要围绕Android...
Sed和Awk是UNIX和Linux系统中极为重要的流编辑器和文本处理工具,它们能够通过简单的命令或脚本高效处理文本文件,实现复杂的文本转换和报告生成。接下来,我们将根据提供的文件内容详细地说明Sed和Awk的关键知识点...
《Vim_101_Hacks》这本书深入浅出地介绍了如何利用Vim进行高效编码与文本管理,旨在帮助读者掌握Vim的基本操作至高级技巧,从而提高编程效率和工作流程。 #### 关于作者 本书由一位经验丰富的Vim用户撰写,其深厚...
从标题来看,这本书更侧重于教授读者一些高效、快捷的技巧(hacks),从而使得处理Linux服务器相关任务更加得心应手。描述中的“Tips Tools”提示读者这本书会提供具体的技巧和实用工具,而“Connecting Monitoring ...
《Ajax Hacks》这本书主要探讨了如何利用Ajax技术来创建交互性强、响应迅速的Web应用程序。Ajax(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下,能够更新部分网页内容的技术。它通过后台与...