首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用ADOSQLExcel工作执行查询操作

学习Excel技术,关注微信公众号: excelperfect 我们可以将存储数据工作当作数据库,使用ADO技术,结合SQL查询语句,可以工作获取满足指定条件数据。...同一代码,只需要连接数据库一次,接着可以执行多个查询操作,无需每次查询前都进行连接。...SQL查询语句为: query = "Select * from [" & wksData.Name _ & "$] Where 物品='苹果' " 工作wksData查询物品为“苹果”记录...我们可以设置其他条件查询,获得相应记录。例如: 1.查询物品为“苹果”且数量大于等于100记录。...图3 关于ADO对象模型及其属性方法应用,以及SQL查询语句语法,有兴趣朋友可以参考相关资料进一步了解。

4.4K20

SQL DELETE 语句:删除记录语法示例,以及 SQL SELECT TOP、LIMIT、FETCH FIRST 或 ROWNUM 子句使用

SQL DELETE 语句 SQL DELETE 语句用于删除现有记录。 DELETE 语法 DELETE FROM 名 WHERE 条件; 注意:删除记录时要小心!...请注意DELETE语句中WHERE子句。WHERE子句指定应删除哪些记录。如果省略WHERE子句,将会删除所有记录!...可以删除情况下删除所有行。...这意味着结构、属性索引将保持不变: DELETE FROM 名; 以下 SQL 语句将删除 "Customers" 所有行,而不删除: DELETE FROM Customers; 删除...FIRST 3 ROWS ONLY; 使用旧版 Oracle ROWNUM 以下 SQL 语句展示了旧版 Oracle 等效示例: 选择 "Customers" 前 3 条记录: SELECT

1.6K20
您找到你想要的搜索结果了吗?
是的
没有找到

使用tp框架SQL语句查询数据某字段包含某值

有时我们需要查询某个字段是否包含某值时,通常用like进行模糊查询,但对于一些要求比较准确查询时(例如:微信公众号关键字回复匹配查询)就需要用到MySQL find_in_set()函数; 以下是用...find_in_set()函数写sq查询l语句示例: $keyword = '你好'; $sql = "select * from table_name where find_in_set('"....$keyword"',msg_keyword) and msg_active = 1"; 以下是tp框架中使用find_in_set()函数查询示例: $keyword = '你好'; $where...数据库关键字要以英文“,”分隔; 2.存储数据要对分隔符进行处理,保证以英文“,”分隔关键字。...以上这篇使用tp框架SQL语句查询数据某字段包含某值就是小编分享给大家全部内容了,希望能给大家一个参考。

7.3K31

MySQL使用分库优化数据库性能,以及它们最佳适用场景优缺点

MySQL分分库是一种数据库架构设计技术,特定场景下可以优化数据库性能可扩展性。 MySQL可以使用分库优化数据库性能,具体步骤如下: 1....分: 将一张大拆分为多张小,每个小只包含部分数据,这样可以减少单个数据量查询复杂度。分方法有水平分垂直分两种。...水平分:按照数据行进行分割,将数据行按照某个条件分散到多个,例如按照日期、地区等分割。使用水平分可以减少单数据量,提高查询效率。...大数据量:当数据量庞大,单个数据库无法存储处理时,可以通过分分库将数据分散存储多个数据库,提高查询操作效率。...安全性隔离性:当应用程序需要分隔敏感数据或多租户数据时,可以通过分分库实现数据隔离安全性。 优点: 提高性能:通过将数据分散存储多个数据库可以提高读写查询性能。

53631

常用SQL语句语法汇总

创建 SQL常用规则1 数据库名称、列名由字母、数字下划线组成 名称必须以字母开头 名称不能重复 删除 定义更新(添加列) 定义更新(删除列) 列查询 查询所有列 根据...WHERE语句选择记录 SQL常用规则2 SQL语句可以使用AS关键字为列设定别名,设定汉字别名时需要使用双引号(’’)括起来 SELECT语句中可以使用DISTINCT删除重复行 WHERE子句要紧跟在...INSERT 语句 保留数据,仅删除全部数据行DELETE语句 删除部分数据行搜索型DELETE语句 改变数据UPDATE语句 更新部分数据行搜索型UPDATE 事务语法 SQL常用规则...EXIST参数查询中经常会使用SELECT * CASE表达式END不能省略 SQL常用规则7 集合运算会除去重复记录,但可以使用ALL选项,保留重复行 进行联结时需要在FROM子句中使用多张...NULL作为聚合键 ROLLUP可以同时得出合计小计 使用GROUPING函数能够简单分辨出原始数据NULL超级分组记录NULL 可以把CUBE理解为将使用聚合键进行切割模块堆积成一个立方体

2.5K50

quarkus数据库篇之四:本地缓存

实战一个非常有用知识点:本地缓存 本地缓存可以省去远程查询数据库操作,这就让查询性能有了显著提升,然而,对quarkus数据库本地缓存,我们不能抱太大希望,甚至使用此功能时候要保持克制,不要用在重要场合...country是一对多关系,这里涉及到关联查询 最后,全部用单元测试对比添加缓存前后查询接口执行时间,以此验证缓存生效 开发-实体类 city实体类是City.java,前面几篇文章实体类没啥区别...Country.java,这里有一处要注意地方,就是我们设计,citycountry并不是通过字段关联,而是一个额外记录了他们之间关系,因此,成员变量citys并不对应country...或者city某个字段,使用注解OneToMany后,quarkushibernate模块默认用country_cities记录citycountry关系,至于country_cities这个名...Country记录时候,与其关联city表记录也会被查询出来,填入Country对象cities成员变量 所以,是不是只要给实体类Country增加缓存注解,查询Country时候,其关联

63220

常用SQL语句语法汇总

FROM ; 查询所有列 SELECT * FROM ; 根据WHERE语句选择记录 SELECT ,......删除重复行 WHERE子句要紧跟在FROM子句之后 SQL语句注释分为单行注释多行注释,单行注释书写在“—”之后,多行注释书写在“/”“/”之间 SELECT 子句中可以使用常数或者表达式 字符串类型数据原则上按照字典顺序进行排列...) DELETE语句到删除对象时记录(行) 可以通过WHERE子句指定对象条件删除部分数据 事务是需要在同一处理单元执行一系列更新处理集合 创建视图 CREATE VIEW 视图名称 ( END SQL常用规则6 谓词就是返回值为真值函数 通常指定关联子查询作为EXIST参数 作为EXIST参数查询中经常会使用SELECT * CASE表达式END不能省略...原则上,窗口函数只能在SELECT子句中使用 超级分组记录默认使用NULL作为聚合键 ROLLUP可以同时得出合计小计 使用GROUPING函数能够简单分辨出原始数据NULL超级分组记录NULL

3.1K80

Go 每日一库之 xorm

上面代码我们演示了xorm一个非常实用功能,将数据库与对应 Go 代码结构体做同步。...发现多了一个level字段。 **此修改只限于添加字段。**删除已有的字段会带来比较大风险。如果我们User结构Salt字段删除,然后执行程序。...为了代码演示方便,我user插入了一些数据: ? 后面的代码为了简单起见,忽略了错误处理,实际使用不要漏掉!..."标签,插入更新数据时,该字段会自动更新为当前时间; 如果我们为time.Time类型字段设置了xorm:"deleted"标签,删除数据时,只是设置删除时间,并不真正删除记录。...已删除记录必须使用Unscoped()方法查询,如果要真正 删除某条记录,也可以使用Unscoped()。

1.3K30

Mybatis-Puls 常用注解

若实体类中表示主键不是id,而是其他字段,例如uid,MyBatis-Plus会自动识别uid为主键列我们将实体类属性id改为uid,将字段id也改为uid,测试添加功能。...这里我们可以通过@TableId这个注解解决这个问题了。 实体类uid属性上通过@TableId将其标识为主键。 即可成功执行SQL语句。...执行SQL语句时,要保证实体类属性名字段名一致如果实体类属性名字段名不一致情况,会出现什么问题呢?...逻辑删除:假删除,将对应数据中代表是否被删除字段状态修改为“被删除状态”,之后在数据库仍旧能看到此条数据记录 使用场景:可以进行数据恢复 那如何实现逻辑删除呢?...还有就是,我们现在去查询一下被我们逻辑删除记录,现在是查不到我们可以打开数据库看看。 数据库数据还在,这就是逻辑删除

56530

金九银十,金三银四(下)

分库分 什么是分区? 分区类型 分区问题? 查询语句执行流程? 更新语句执行过程? existin区别? MySQLint(10)char(10)区别? ...数据切分可以分为两种方式:垂直划分水平划分。 垂直划分 垂直划分数据库是根据业务进行划分,例如购物场景,可以将库涉及商品、订单、用户分别划分出成一个库,通过降低单库大小提高性能。...打开锁住所有底层成本可能很高。当查询访问分区时,MySQL 需要打开并锁住所有的底层,这个操作分区过滤之前发生,所以无法通过分区过滤降低此开销,会影响到查询速度。...可以通过批量操作降低此类开销,比如批量插入、LOAD DATA INFILE一次删除多行数据。 维护分区成本可能很高。...existin区别? exists用于对外表记录做筛选。exists会遍历外表,将外查询每一行,代入内查询进行判断。当exists里条件语句能够返回记录行时,条件就为真,返回外表当前记录

53630

删用户删空间操作还能flashback回来

有一次某微信群里,有人提问以下两条操作还能恢复?而且是没有开归档。紧接着又有人提问数据库是否开了闪回?...那我们就从一个不了解闪回特性角度一一看这个问题(这里假设是这个用户下就一张) 下面是整个分析过程: 场景一、闪回查询 SQL> create table aaa.a1(id number); Table...at line 1: ORA-00942: table or view does not exist 可以看出闪回查询是无效,其实你要是懂一点闪回查询首先可以排除掉,因为闪回查询是基于undo,而且...undo受ddl影响,drop操作并不会使用到undo空间,所以基于undo闪回查询在这种场景并不能找回数据。...(flashbackdatabase)特性开启情况下,如果我们只是做了drop user删除用户数据而没有删除datafile,那么我们可以使用flashback database恢复数据,不同场景使用不同闪回恢复技术

83320

MySQL 多表联合查询有何讲究?

今天我们聊聊微信中多表联合查询,应该是小驱动大还是大驱动小? 1. in VS exists 正式分析之前,我们先来看两个关键字 in exists。...❝这里我就直接使用 vhr 做试验,就不单独给大家数据库脚本了,小伙伴们可以查看 vhr 项目(https://github.com/lenve/vhr)获取数据库脚本。... and d.name='技术部') limit 10; 这条 SQL 查询结果上面用 in 关键字一样,但是查询过程却不一样,我们来看看这个 SQL 执行计划: 可以看到,这里先对员工做了全扫描...为什么要小驱动大 MySQL ,这种多表联合查询原理是:以驱动数据为基础,通过类似于我们 Java 代码嵌套循环 方式去跟被驱动表记录进行匹配。...小伙伴们来看下,如果我把 E departmentId 字段上索引删除,再把 D id 字段上主键索引也删除,此时我们再来看看如下 SQL 执行计划: 可以看到,此时 E D

2.1K20

interview-db

大家好,又见面了,我是你们朋友全栈君。1.索引作用优缺点 索引就一种特殊查询,数据库搜索可以利用它加速对数据检索。它很类似与现实生活目录,不需要查询整本书内容就可以找到想要数据。...但 TRUNCATE TABLE 比 DELETE 速度快,且使用系统事务日志资源少。 DELETE 语句每次删除一行,并在事务日志为所删除每行记录一项。...TRUNCATE TABLE 通过释放存储数据所用数据页删除数据,并且只事务日志记录释放。 TRUNCATE TABLE 删除所有行,但结构及其列、约束、索引等保持不变。...是否用到了索引. 6.4 上面6.3第二个sql可以优化一下?...当A数据与B数据一样大时,in与exists效率差不多,可结合索引情况使用. in exists区别: 如果子查询得出结果集记录较少,主查询较大且又有索引时应该用in, 反之如果外层查询记录较少

43910

【数据库】数据库优化(SQL优化)

【数据库】数据库优化(SQL优化) sql语句优化 1.查询模糊匹配 尽量避免一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置百分号会导致相关列索引无法使用,最好不要用。...这类脚本其实可以很简单就整合在一个UPDATE语句完成(前些时候协助xxx项目做性能问题分析时就发现存在这种情况) 5.可以使用UNION ALL语句里,使用了UNION UNION 因为会将各查询子集记录做比较...7.对Where 语句法则 7.1避免WHERE子句中使用in,not in,or 或者having。 可以使用 exist not exist代替innot in。...,SQL是根据数据进行查询优化,当索引列有大量数据重复时,SQL查询可能不会去利用索引, 如一中有字段sex,male、female几乎各一半,那么即使sex上建了索引也对查询效率起不了作用...26.尽可能使用 varchar 代替 char ,因为首先变长字段存储空间小,可以节省存储空间, 其次对于查询来说,一个相对较小字段内搜索效率显然要高些。

5K40

Oracle Sql优化

3.Oracle执行IN子查询时,首先执行子查询,将查询结果放入临时再执行主查询。而EXIST则是首先检查主查询,然后运行子查询直到找到第一个匹配项。NOT EXISTS比NOT IN效率稍高。...但具体选择IN或EXIST操作时,要根据主子表数据量大小具体考虑。 4.不用“”或者“!=”操作符。对不等于操作符处理会造成全扫描,可以用“”代替。...12.UNION操作符会对结果进行筛选,消除重复,数据量大情况下可能会引起磁盘排序。如果不需要删除重复记录,应该使用UNION ALL。...13.Oracle从下到上处理Where子句中多个查询条件,所以连接语句应写在其他Where条件前,可以过滤掉最大数量记录条件必须写在Where子句末尾。...我们可以总结一下可能引起全扫描操作: 1.索引列上使用NOT或者“”; 2.对索引列使用函数或者计算; 3.NOT IN操作; 4.通配符位于查询字符串第一个字符; 5.IS NULL或者IS

1.3K30

每个后端都应该知道八个提升 SQL 性能 Tips

1、使用 Exists 代替子查询查询日常工作不可避免一定会使用到,很多时候我们用法都是这样: SELECT Id, Name FROM Employee WHERE DeptId In...2、适当使用 JOIN 代替子查询 除了上面的exist 之外在有些场景我们可以使用 JOIN 替换子查询,毕竟子查询效果是很差,如下所示: SELECT Id, Name FROM Employee...5、使用批处理代替循环 插入数据时候我们可以使用 values 批量进行插入,而不是通过循环进行单条数据查询,如下所示: //不可取 For(Int i = 0;i <= 5; i++)...6、使用 UNION ALL 替代 UNION 使用联合查询时候,很多时候我们使用到 UNION ALL 或者 UNION 联合多个,进行汇总。...比如说我们有两张 teacher student,里面的数据分别是下面 这里这两张当中,存在相同一条数据,就是(4, 马六)这一条数据,我们可以看看使用 UNION ALL UNION

30230

数据库优化

一个索引数最好不要超过6个,若太多则应考虑一些不常使用列上建索引是否有 必要。   3. 尽量sql避免以下几种情况, 否则会导致索引失效。...可以num上设置默认值0,确保num列没有null值,然后这样查询: select id from t where num = 0 尽量避免索引列使用 !...实际大部分应用是不会产生重复记录,最常见是过程与历史UNION。...如: 这个SQL在运行时先取出两个结果,再用排序空间进行排序删除重复记录,最后返回结果集,如果数据量大的话可能会导致用磁盘进行排序。...尽可能使用 varchar/nvarchar代替 char/nchar ,因为首先变长字段存储空间小,可以节省存储空间,其次对于查询来说,一个相对较小字段内搜索效率显然要高些。

88520

关系型数据库 MySQL 你不知道 28 个小技巧

例如,查询 3 个字段 s_id,f_name,f_price,如果不同记录这 3 个字段组合值都不同,则所有记录都会被查询出来。 7、ORDER BY 可以 LIMIT 混合使用?...函数可以嵌入 SQL 语句中使用可以 SELECT 语句中作为查询语句一个部分调用;而存储过程一般是作为一个独立部分来执行。 14、存储过程代码可以改变?...存储过程包含用户定义 SQL 语句集合,可以使用 CALL 语句调用存储过程,当然存储 过程可以使用 CALL 语句调用其他存储过程,但是不能使用 DROP 语句删除其他存储过程。...例如,开发环境优化查询效率 低语句,可以开启慢查询日志;如果需要记录用户所有查询操作,可以开启通用查询日志; 如果需要记录数据变更,可以开启二进制日志;错误日志是默认开启。...只有查询语句中包含 SQL_NO_CACHE 关键字 时,才不会使用查询缓冲区。可以使用 FLUSH QUERY CACHE 语句刷新缓冲区,清理查询缓冲区碎片。

1.7K40

书写高质量SQL30条建议,这下够用了!

left join 两张进行连接查询时,会返回左所有的行,即使没有匹配记录。...right join 两张进行连接查询时,会返回右所有的行,即使没有匹配记录。...因此,我们要选择最外层循环小,也就是,如果B数据量小于A,适合使用in,如果B数据量大于A,即适合选择exist。...因为SQL优化器是根据数据量进行查询优化,如果索引列有大量重复数据,Mysql查询优化器推算发现不走索引成本更低,很可能就放弃索引了。 25、尽量避免向客户端返回过多数据量。...其次对于查询来说,一个相对较小字段内搜索,效率更高。 28、为了提高group by 语句效率,可以执行到该语句前,把不需要记录过滤掉。

96410

联合索引这点事儿

我们从头开始 ER图 ? 建 按照ER图,建立数据库,并且进行测试数据填充。(建sql填充脚本文件可公众号(Vegout)回复关键字“联合索引”获取) ?...又使用了0.656秒,通过explain我们可以看到 ? 这次查询并没有走索引。所以建立索引字段like条件下,如果以“%”开头,索引会失效。...=”,“”,“not in”,“not exist”会使索引失效,但对于“>”,“=”,“<=”使用,优化器会根据查询数据情况决定走不走索引(走索引快就走索引,索引慢就全扫描),比如这里将大于号改成小于号...如果当时我们没有删除第一个联合索引情况下,执行上边没有走索引select语句,就是这个 select * from article where summary like "summary666%"...当然,我们可以title,summary上分别建立单列索引,但当多条件查询时,只能有一个索引生效。

55030
领券