首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >universe U2.net选择通配符

universe U2.net选择通配符
EN

Stack Overflow用户
提问于 2015-07-23 13:34:46
回答 2查看 357关注 0票数 0

当我使用SQL查询MS access或MS SQL时。我可以使用以下sql来检索数据

代码语言:javascript
复制
SELECT ORDER_NO,NAME FROM ORDER WHERE LEFT(ORDER_NO,6)='123456'

检索订单号以'123456‘开头的记录

但是LEFT不能在宇宙U2.net中工作。

如下所示,但是查询返回结果很慢。

代码语言:javascript
复制
SELECT ORDER_NO,NAME FROM ORDER WHERE ORDER_NO LIKE '%123456%'

我正在寻找替代的,左,中等,以优化代码

谢谢

EN

回答 2

Stack Overflow用户

发布于 2015-08-01 01:17:22

如果去掉第一个'%‘,速度会更快吗?您要在字段的任何部分寻找123456,而不是从字段的开头开始。

这需要读取和计算每条记录中每个the字段的整个值,而不仅仅是第一个字符。对于大型数据集,这可能是一个很大的差异,特别是在非索引字段上。

票数 0
EN

Stack Overflow用户

发布于 2016-06-24 23:13:32

您可以只使用选择运算符。我认为这样会更快,但没有测试: SELECT ORDER_NO,NAME FROM ORDER WHERE ORDER_NO = "123456]‘

对于关键字位于中间的order,您可以这样做:选择ORDER_NO,NAME FROM ORDER WHERE ORDER_NO =“123456”

对于以字符串结尾的订单: SELECT ORDER_NO,NAME FROM ORDER WHERE ORDER_NO = "[123456‘

,,[]是结尾,开头是,包含。我相信这些比类似的查找更快。

此外,还可以将LIKE与省略号通配符语法一起使用: SELECT ORDER_NO,NAME FROM ORDER WHERE ORDER_NO LIKE "...123456‘SELECT ORDER_NO,NAME FROM ORDER WHERE ORDER_NO LIKE "...123456...’选择ORDER_NO,NAME FROM ORDER WHERE ORDER_NO LIKE“123456...”

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31578921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档