首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • SQL入门教程(2):怎么用SQL做基础信息检索?

    今天,我们将深入了解 SQL 的基本语法,并通过实际应用场景帮助你更好地理解如何使用 SQL 提取和分析数据。 1.SQL基础语法SQL 是一种声明性语言,意味着你只需要告诉它你想做什么,SQL 会帮你去做。在 SQL 中,常用的语法主要包括数据查询、数据过滤、数据排序、数据分组等基本操作。 SELECT:用于从数据库中选择数据SELECT column1, column2 FROM table_name;这个命令的意思是从 table_name 表中选择 column1 和 column2 ON table1.id = table2.id;JOIN 用来将两个或多个表的数据连接起来。 SQL在用户研究中的应用场景SQL 语法虽然基础,但一旦掌握,你会发现它在用户研究中的应用非常广泛。

    62510编辑于 2024-12-05
  • 来自专栏老虎刘谈oracle性能优化

    区间检索SQL优化--续

    在2017-07-16的文章 区间检索SQL性能优化方法 中,我使用了创建function的方式,来解决匹配不到区间时的buffer gets过多的性能问题。 最近在解决一个客户的多表关联区间检索问题时,又琢磨了一下,发现还是可以直接使用SQL,替代原来的function,SQL还真是博大精深啊。 导入方法: 1、unzip COUNTRY_IP_RANGE.dmp.gz 2、imp xxx/xxx file=COUNTRY_IP_RANGE.dmp full=y 如果能够匹配到区间 SELECT COUNTRY_CODE FROM COUNTRY_IP_RANGE WHERE end_ip1 >:B1 and start_ip1 <= :B1 and rownum=1; --2 索引失效时sql可以慢,但是不可以出错。

    35230编辑于 2022-06-22
  • 来自专栏数据和云

    区间检索SQL性能优化方法

    个人微信公众号:sql_tigerliu. 几年前,有朋友让我帮忙优化一个SQL:根据IP地址查询对应的国家/地区(根据号码查询归属地也属类似业务)。 SQL每次最多只返回一条记录。 2、根据业务特点及索引默认扫描方式为升序扫描,改变索引扫描方式,使用索引降序扫描,用index_rs_desc的hint实现: select /*+ INDEX_RS_DESC(ip IDX_IP1) 但是光靠SQL本身已经无能为力。 最终的优化方法,通过plsql解决,创建下面的函数: CREATE OR REPLACE function get_ip_area(v_ip varchar2 ) return varchar2 IS

    1.3K60发布于 2018-03-07
  • 来自专栏老虎刘谈oracle性能优化

    区间检索SQL性能优化方法

    几年前,有朋友让我帮忙优化一个SQL:根据IP地址查询对应的国家/地区(根据号码查询归属地也属类似业务)。 SQL每次最多只返回一条记录。 但是光靠SQL本身已经无能为力。 最终的优化方法,通过plsql解决,创建下面的函数: CREATE OR REPLACE function get_ip_area(v_ip varchar2 ) return varchar2 IS 老虎刘会把那些年优化的SQL(有代表性的)总结出来与SQL优化爱好者分享

    53220编辑于 2022-06-22
  • 来自专栏大猪的笔记

    信息检索:布尔检索-建立倒排索引(2)

    假定我们有3个文档: doc1 = ["1", "hello", "word", "i", "love", "dazhu"] doc2 = ["2", "hi", "i", "can", "speak" 合并单词表并排序(代码 give_index) 同理,处理doc2和doc3,合并所有结果并排序,可得一个如下的列表: ['can', '2'] ['can', '3'] ['dazhu', '1'] 最终得到结果如下: ['can', ['2', '3']] ['dazhu', ['1', '3']] ['hello', ['1', '3']] ['hi', ['2', '3']] ['i', [' 1', '2', '3']] ...... 取出 i 的倒排记录表:['1', '2', '3'] 2. 取出 can 的倒排记录表:['2', '3'] 3. 对这两个集合求交集 4.

    1.6K20发布于 2019-11-21
  • 来自专栏bisal的个人杂货铺

    SQL Server检索SQL和用户信息的需求

    Oracle中如果需要知道一条SQL是谁执行的,可以通过v$sql的parsing_schema_name字段得到登录的schema名称,相当于SQL和会话登录信息是有绑定的。 但是最近有个SQL Server的需求,需要知道历史SQL的执行者。 如下SQL,可以找到当前SQL Server跑过的SQL,但是没用户信息, SELECT p.refcounts, p.usecounts, sqltext.text  FROM sys.dm_exec_cached_plans 咨询了大师,给到的回复是,SQL Server不能通过DMV视图来查询某一个会话执行过的历史SQL,只能采集当前会话正在执行的SQl,不断采集然后保存下来才行。 无论从监控粒度,还是数据统计的角度,SQL和用户信息关联检索还是有用的,可以做到更精细的控制,不太清楚为什么微软官方没给出这样的设计,或者有其他隐藏的功能?

    1.7K30编辑于 2022-04-23
  • 来自专栏desperate633

    2-3课 检索数据检索检索排序数据

    这两课主要介绍sql中利用select语句对数据的简单检索。 下面分别讨论不同类型的检索 检索列 单个列 select prod_id from Products; 多个列 select prod_id, prod_name, prod_price from Products ; 所有列 select * from Products; 检索不同值 的列 select distinct vend_id from products; 检索前几列或者后几列 select prod_name from products limit 5; select prod_name from products limit 5 offset 5; 检索排序数据 单个列排序 select prod_name

    1.1K20发布于 2018-08-22
  • 来自专栏GreenLeaves

    SQL学习之空值(Null)检索

    这个时候我们需要检索CheckValueString列为NULL值,ResultRemarks(该字段为空的记录) 我会这么写代码 select * from T_Check_InfoDetail where

    2.5K90发布于 2018-01-24
  • 来自专栏数说戏聊

    01-03章 检索排序数据第1章 了解SQL2检索数据第3章

    2检索数据 2.1 SELECT语句 用于从一个或多个表中检索信息,必须指定两条信息,想选择什么,从什么地方选择。 关键字(keyword) 作为SQL组成部分的保留字,关键字不能用作表或列的名字。 2.2 检索单个列 用SELECT语句从Products表中检索名为prod_name的列。 多条SQL语句必须以分号(;)分隔。 SQL关键字应大写,列名和表名应小写。 2.3 检索多个列 在SELECT关键字后给出多个列名,列名之间必须以逗号分隔。 屏幕快照 2018-05-24 05.34.56.png 说明 SQL语句一般返回原始的、无格式的数据。数据的格式化是表示问题,而不是检索问题。 因此,LIMIT 1 OFFSET 1 会检索 1 行,从第 2 行开始。

    3.4K10发布于 2018-08-02
  • 来自专栏bisal的个人杂货铺

    SQL Cookbook》 - 第一章 检索数据

    朋友推荐了一本书《SQL Cookbook》,翻译过来就是《SQL经典实例》,讲的都是SQL编写层面的案例,例如获得随机数、NULL值判断、求中位数、日期计算等,都是日常工作中可能用到的,但是有些知识点可能稍微模糊 ,用的时候,得琢磨下,或者有些知识点不了解,你不知道通过SQL还可以实现某个功能,借此机会,系统回顾一下SQL相关的开发技能,争取了解之前不知道的,巩固之前模糊的知识点,跟大家共享读书笔记。 第一章 检索数据 1. 在SELECT语句中指定具体的列名,可以确保查询语句不会返回无关的数据。当在整个网络范围内检索数据时,这样做更重要,因为他避免了将时间浪费在检索不需要的数据上。 2. 新的列名被称作别名,他会让检索结果更易于理解,对于一些数据库,可以省略AS关键字,但所有的数据库都支持这个关键字。 3. MySQL中可以用concat连接多列的值, select concat(cname, ' WORKS AS A ', job) from emp; DB2、Oracle和PG使用竖线进行连接, select

    1.2K20发布于 2021-09-06
  • 来自专栏大数据杂货铺

    使用检索增强生成 (RAG) 增强 SQL 代理

    在上一篇文章中,我们深入探讨了构造 SQL 代理的过程,以帮助我们通过查询数据库中的数据来回答问题。在本文中,我们将探讨如何通过合并高级分析功能来增强 SQL 代理的功能。 CallDuration','DataCounter','SMS') DistanceMeasure('cosine') TopK(2) ) AS dt ORDER BY 3,1,2,4; 以下是来自 DB 的结果: Target_ID Reference_ID DistanceType Distance 检索增强生成 (RAG) 为了便于您的代理了解如何使用这些功能,我建议采用一种称为检索增强生成 (RAG) 的技术。 此方法有助于根据查询查找相关说明。 此外,我们还讨论了创建一个 RAG 来检索相关的语法指令信息。现在,让我们探讨如何无缝集成这两个组件。 RAG 作为工具 在这篇博客中,我详细介绍了 如何利用SQL 代理与数据库交互等工具。

    1.1K10编辑于 2024-04-02
  • 来自专栏Tripod

    SQL检索MongoDB的轻量级解决方案

    关于使用SQL访问MongoDB的解决方案,网络上已经可以查到很多。 本文将介绍一种由MOQL-Transx开源项目提供的采用sql检索MongoDB的轻量级解决方案。 MOQL-Transx是一个致力于减少开发者学习成本,用SQL语法检索各类数据库的开源项目。 项目包括两个模块,moql-translator用于完成从MOQL(SQL92语法子集)到各类数据库DSL的翻译;moql-querier用于完成对各类数据库以SQL语言检索并获得二维结果的输出。 由于MongoDB并没有一个完整意义上的DSL,故本文介绍的部分主要是使用moql-querier中的MongoDBQuerier类来完成对MongoDB的检索

    1.6K20编辑于 2022-02-28
  • 来自专栏SpringCloud专栏

    2 Elasticsearch全文检索和匹配查询

    官网的翻译可参考:http://blog.csdn.net/dm_vincent/article/details/41693125 Elasticsearch主要功能就是完成模糊检索、字符串匹配 全文检索测试 还接着上一篇的demo,在Controller的add方法加条数据 @RequestMapping("/add") public void testSaveArticleIndex 我们通过几个小测试来看看全文检索。 文档2和文档3都包含了”brown”和”dog”一次,同时它们的title字段拥有相同的长度,因此它们的分值相同。 文档1只包含了”brown”。 无论你输入的是什么,至少有2个词条被匹配时,该文档才会被算作最终结果中的一员。 minimum_should_match参数非常灵活,根据用户输入的词条的数量,可以适用不同的规则。

    1.6K20发布于 2019-01-17
  • 来自专栏捞月亮的小北

    2-SQL

    SQL 全称 Structured Query Language,结构化查询语言。操作关系型数据库的编程语言,定义了 一套操作关系型数据库统一标准 。 2. SQL 通用语法 1). SQL 语句可以单行或多行书写,以分号结尾。 2). SQL 语句可以使用空格/缩进来增强语句的可读性。 3). MySQL 数据库的 SQL 语句不区分大小写,关键字建议使用大写。 4). SQL 分类 SQL 语句,根据其功能,主要分为四类:DDL、DML、DQL、DCL。 给全部字段添加数据 语法: INSERT INTO 表名 VALUES (值1, 值2, ...); 案例: 插入数据到 employee 表,具体的 SQL 如下: insert into employee 值2, ...), (值1, 值2, ...) ; 案例: 批量插入数据到 employee 表,具体的 SQL 如下: insert into employee values(3,'3','韦一笑',

    1.2K10编辑于 2023-12-01
  • 来自专栏数据库干货铺

    SQL基础(2

    之前的SQL基础1中已经介绍了部分Select的内容,但是,实际使用中select 还有很多其他的用法,本文会再介绍部分select的其他用法。 1. 去重查询 1.1 创建演示表 创建2张表用于演示,表名分别为student和class,后续也将继续用这2张表演示,2张表的数据如下: student表 ? class表 ? class_no | +----------+ | 201801 | | 201901 | | 201902 | +----------+ 3 rows in set (0.00 sec) 2. 6.1 内连接 内连接是查询2张表同时存在的记录,即两张表的交集。 | 2019级02班 | +----------+--------------+ 6 rows in set (0.00 sec) c) in可以用内连接的方式来改写,尤其是多层子查询时,这也是SQL

    63340发布于 2019-11-29
  • 来自专栏bisal的个人杂货铺

    SQL中用到LIKE模糊检索的几种优化场景

    SQL开发中经常会碰到使用LIKE模糊检索的场景,'%'的位置,可能影响索引的正常使用,看到刘老师公众号的一篇文章,介绍了相关场景的改造策略,非常受用,推荐阅读。 ,无法直接通过索引定位数据,只是因为检索列只有object_name,所以用到的是索引快速全扫描,实际还是扫描的所有索引叶子节点, 为了说明清楚,我们检索object_id列,他不在索引中, select (2) ABC始终从字符串结尾的某个固定位置出现,可以创建函数组合索引进行优化。 (3) ABC在字符串中位置不固定,可以通过改写SQL进行优化。 substr(object_name, 1, length(object_name)-4)) like reverse ('%BISAL'); 第三种情况,ABC在字符串中位置不固定,可以通过改写SQL 但是这种IN改写,如果子查询返回的记录数较少,执行效率就可能提高了N倍,但如果较多,改写的效率,可能和之前相差不大了, 虽然以上的'%'有各种改造的方案,但至少都得改写一些SQL,所以还是建议,从需求层面

    2.2K10编辑于 2022-02-18
  • 来自专栏深度学习自然语言处理

    字节跳动发布最新音乐检索系统ByteCover2检索速度提高八倍

    近期,字节跳动火山语音团队的最新音乐检索系统 ByteCover2 入选了 ICASSP 2022。 这一系统主要面向翻唱识别(CSI)这一音乐信息检索(MIR)领域的一项重要任务,通过表征学习方法让其具备提取音乐核心特征的能力,并且该特征能够对种类繁多的音乐重演绎具有良好的鲁棒性,检索速度提高 8 倍 ByteCover2: 为高效翻唱识别系统设计的隐式嵌入降维方法 《BYTECOVER2: TOWARDS DIMENSIONALITY REDUCTION OF LATENT EMBEDDING FOR 实验结果显示, PCA FC 能显著提升降维模型的检索性能,在保持检索性能不变的前提下向量尺寸可以被压缩八倍。 M2MeT 挑战赛包括多说话人语音识别和说话人日志两个赛道,团队在限定训练数据子赛道上分别获得第二名和第四名。

    1.2K10编辑于 2022-05-30
  • 来自专栏技术杂记

    SQL 精编(2

    ); CREATE DATABASE `test`; ---- insert INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2); insert into teamstemp select * from teams; insert into table_a(field_a1,field_a2,field_a3) select field_b1,field_b2 ,a_name,b_cumsum,c_cumsum,d_spent,e_rate,created_at,updated_at abc_def into outfile "/tmp/tmp_xyz.sql .2"; ---- optimize table mysql> select concat('optimize table ',TABLE_SCHEMA,'.' data load data infile "/tmp/abcdef.sql.925.2" into table abc_def; use xxx; source fff.sql;

    50220发布于 2021-10-19
  • 来自专栏合集

    2】My SQL 管理

    | +--------------+--------------+------------------+ | localhost | guest | 6f8c114b58f2ce9e 你可以在以上实例看到用户密码加密后为: 6f8c114b58f2ce9e. 注意:在 MySQL5.7 中 user 表的 password 已换成了authentication_string。 Shutdown_priv Process_priv File_priv Grant_priv References_priv Index_priv Alter_priv 另外一种添加用户的方法为通过SQL 注意: MySQL 的SQL语句以分号 (;) 作为结束标识。

    82490发布于 2018-04-12
  • 来自专栏ShyNodes

    my2sql

    my2sql简介 go版MySQL binlog解析工具,通过解析MySQL binlog ,可以生成原始SQL、回滚SQL、去除主键的INSERT SQL等,也可以生成DML统计信息。 类似工具有binlog2sql、MyFlash、my2fback等,本工具基于my2fback、binlog_rollback工具二次开发而来。 产品性能对比 binlog2sql当前是业界使用最广泛的MySQL回滚工具,下面对my2sql和binlog2sql做个性能对比。 my2sql binlog2sql 1.1G binlog生成回滚SQL 1分40秒 65分钟 1.1G binlog生成原始SQL 1分30秒 50分钟 1.1G binlog生成表DML统计信息、以及事务统计信息 采用下载已经编译好的二进制版本 有编译好的linux版本(CentOS release 7.x) 点击下载Linux版 下载好后,上传至服务器/usr/local/下 授予执行权限chmod +x /usr/local/my2sql

    62120发布于 2021-07-27
领券