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

PostgreSQL 教程

PostgreSQL 基础教程 首先,您将学习如何使用基本数据查询技术从单个表中查询数据,包括查询数据、对结果集进行排序和过滤行。然后,您将了解高级查询,例如连接多个表、使用集合操作以及构造子查询。...排序 指导您如何对查询返回的结果集进行排序。 去重查询 为您提供一个删除结果集中重复行的子句。 第 2 节. 过滤数据 主题 描述 WHERE 根据指定条件过滤行。...完全外连接 使用完全连接查找一个表中在另一个表中没有匹配行的行。 交叉连接 生成两个或多个表中的行的笛卡尔积。 自然连接 根据连接表中的公共列名称,使用隐式连接条件连接两个或多个表。 第 4 节....数据分组 主题 描述 GROUP BY 将行分成组并对每个组应用聚合函数。 HAVING 对组应用条件。 第 5 节. 集合运算 主题 描述 UNION 将多个查询的结果集合并为一个结果集。...INTERSECT 组合两个或多个查询的结果集并返回一个结果集,该结果集的行都出现在两个结果集中。 EXCEPT 返回第一个查询中未出现在第二个查询的输出中的行。 第 6 节.

59210

【技能get】简单而有效的 EXCEL 数据分析小技巧

提示:如果你认为自己可以熟练使用代码去进行数据处理方面的运算,那么阅读本文将对你没有太多用处。而对于其他人,我建议你学习这些技巧,从而更深入的掌握并理解如何使用。 ?...在Policy表中,我们需要根据共同字段 “Customer id”将Customer表内City字段的信息匹配到Policy表中。这时,我们可以使用Vlookup()函数来执行这项任务。 ?...通常,当你将数据库中的数据进行转储时,这些正在处理的文本数据将会保留字符串内部作为词与词之间分隔的空格。并且,如果你对这些内容不进行处理,后面的分析中将产生很多麻烦。 ? 6....数据清洗 1.删除重复值:EXCEL有内置的功能,可以删除表中的重复值。它可以删除所选列中所含的重复值,也就是说,如果选择了两列,就会查找两列数据的相同组合,并删除。 ?...8.ALT + D + S: 要排序的数据集 9.按Ctrl + O:打开一个新的工作簿 10.按Ctrl + N:创建一个新的工作簿 11.F4:选择范围,并且按F4键,可以将数据引用改为绝对引用,混合引用

3.5K90
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    翻译 | 简单而有效的EXCEL数据分析小技巧

    提示:如果你认为自己可以熟练使用代码去进行数据处理方面的运算,那么阅读本文将对你没有太多用处。而对于其他人,我建议你学习这些技巧,从而更深入的掌握并理解如何使用。 ?...在Policy表中,我们需要根据共同字段 “Customer id”将Customer表内City字段的信息匹配到Policy表中。这时,我们可以使用Vlookup()函数来执行这项任务。 ?...通常,当你将数据库中的数据进行转储时,这些正在处理的文本数据将会保留字符串内部作为词与词之间分隔的空格。并且,如果你对这些内容不进行处理,后面的分析中将产生很多麻烦。 ? 6....数据清洗 1.删除重复值:EXCEL有内置的功能,可以删除表中的重复值。它可以删除所选列中所含的重复值,也就是说,如果选择了两列,就会查找两列数据的相同组合,并删除。 ?...8.ALT + D + S: 要排序的数据集 9.按Ctrl + O:打开一个新的工作簿 10.按Ctrl + N:创建一个新的工作簿 11.F4:选择范围,并且按F4键,可以将数据引用改为绝对引用,混合引用

    3.5K100

    HANA计算视图中的RANK使用方法

    正文部分 先分析一下RANK的特点 1、此函数根据分区和排序子句计算数据集的排名。 2、当我们必须从源集中的多个记录或前N个或后N个记录中选择最新记录时,这将非常有用。 来自官网的介绍。...一旦我们在RANK函数的帮助下排列数据集,我们可以将RANK值过滤为“1”,以将最近的记录获取到输出。...Sort Direction: 此选项用于根据我们定义的阈值获取顶部记录或底部记录。 我们在这里有两个选择,他们是 降序(前N):这从源集合中检索前N个记录,其中N是我们定义的阈值。...Partition: 此列用于根据我们定义的列对源数据集进行分区。 这与我们在SQL脚本中编写RANK函数相同。 对于我们的场景,分区列将是“ORDER_NO”。...如果我们不需要多于一个记录到输出,建议对排序节点本身的数据进行过滤。 所以在我们的场景中,我们可以将阈值保持为'1'。

    1.5K10

    【SAP HANA系列】HANA计算视图中的RANK使用方法

    正文部分 先分析一下RANK的特点 1、此函数根据分区和排序子句计算数据集的排名。 2、当我们必须从源集中的多个记录或前N个或后N个记录中选择最新记录时,这将非常有用。 来自官网的介绍。...一旦我们在RANK函数的帮助下排列数据集,我们可以将RANK值过滤为“1”,以将最近的记录获取到输出。...我们在这里有两个选择,他们是 降序(前N):这从源集合中检索前N个记录,其中N是我们定义的阈值。 升序(底部N):这从源数据中检索底部N个记录,其中N是我们定义的阈值。...Partition: 此列用于根据我们定义的列对源数据集进行分区。 这与我们在SQL脚本中编写RANK函数相同。 对于我们的场景,分区列将是“ORDER_NO”。...如果我们不需要多于一个记录到输出,建议对排序节点本身的数据进行过滤。 所以在我们的场景中,我们可以将阈值保持为'1'。

    1.6K11

    理解PG如何执行一个查询-1

    计划器负责遍历分析树,并找到所有可能执行查询的计划。如果定义了一个有用的索引,该计划可能包括对整个表的顺序扫描和索引扫描。如果查询涉及两个或多个表,则规划器可推荐许多不同方法来连接这些表。...Sort算子通过一个或多个排序键对输入集重新排序来生成结果集。稍后更加详细描述每个查询算子。下面是一个简单执行计划示例: 可以看到复杂的查询分解为简单步骤。树底部的查询算子输入集是物理表。...当规划器/优化器可以通过遍历一系列索引值来减小结果集的大小时,或者由于索引提供的隐式排序而可以避免排序时,它会使用索引扫描算子。 Sort Sort算子对结果集进行排序。...一些查询运算符要求对其输入集进行排序。例如,Unique算子(我们稍后会看到)通过在读取已排序的输入集时检测重复值来消除行。...此计划中的Sort算子按mfgname列对其输入集排序。

    2K20

    mysql基础知识(4)

    在使用复合索引进行查询时,MySQL会首先匹配索引的最左边的列(第一个列),然后依次匹配后续的列。...2、JOIN JOIN 子句是在FROM子句之后,根据相关列合并两个或多个表中的行,它决定了如何匹配不同表中的行。...3、WHERE WHERE 子句根据指定条件筛选行。它在表联接后但在任何分组或聚合发生之前对行应用条件。此步骤对于将数据集缩小到仅相关行至关重要。...7、DISTINCT DISTINCT 关键字从结果集中删除重复的行。它在子句之后应用,以确保输出仅包含唯一行。 8、ORDER BY ORDER BY 子句根据一个或多个列对结果集进行排序。...应用此语句,可以将结果集按所需顺序显示。还可以根据需要指定升序或降序排序来组织数据。

    8810

    高性能MySQL(4)——查询性能优化

    优化策略可以简单的分为两种 静态优化: 静态优化可以直接对解析树进行分析,并完成优化。...4.3.4 MySQL如何执行关联查询 MySQL中“关联”认为任何一个查询都是一次“关联”,并不仅仅是一个查询需要到两个表匹配才叫关联。...4.3.7 排序优化 排序优化:无论如何排序都是一个成本很高的操作,所以从性能角度考虑,应尽可能避免排序或者尽可能避免对大量数据进行排序。尽量通过索引进行排序。...MySQL有如下两种排序算法: 两次传输排序(旧版本使用):读取行指针和需要排序的字段,对其进行排序,然后再根据排序结果读取所需要的数据行。...单次传输排序(新版本使用):先读取查询所需要的所有列,然后在根据给定列进行排序,最后直接返回排序结果。效率更高,但占用内存更大。

    1.4K10

    Power Query 真经 - 第 10 章 - 横向合并数据

    这意味着可以通过匹配 “Transaction” 表中的数据来获得 “Chart of Accounts” 表中的 “Name”,前提是可以根据两个表之间的 “复合键” 来进行匹配,如图 10-7 所示...使用隐含的分隔符可以避免基于 111 键的模糊连接,而是将这些值视为 1-11 或 11-1。 【警告】 预览底部的指示器提示根据 Power Query 的数据预览,会给出一个预估匹配情况。...【注意】 这里从 “源” 表开始的原因仅仅是因为通常希望在完成时将这些列放在输出的左侧,这样可以避免以后对列进行重新排序。如果用户想从 “查找” 表开始并【追加】“源” 表,那么这个方法仍然有效。...尽管它可能无法通过预览正确显示,但在加载时将对整个数据集执行这些步骤,并且方法将起作用。 现在,将采取以下步骤(是见证奇迹的时刻)。 “Quantity” 列【升序排序】。...然后对 “Order ID” 列进行第二次排序(如果有多个排序条件,则需要对多个 ID 列进行排序),这样做可以确保 “Price” 表中的行始终位于 “Order” 表中的行之前。

    4.4K20

    Python数据清洗实践

    问卷结果中缺失的数据在使用前必须做相应的解释及处理。 下面,我们将看到一份关于不同层次学生入学考试的数据集,包括得分、学校偏好和其他细节。 通常,我们先导入Pandas并读入数据集。...得到"District"列缺值统计数 看District列,我们想检测该列是否有空值并统计空值的总数。...使用中位数替换缺失值 我们可以使用非数值型值所在列的中位数进行替换,下列中的中位是为3.5。...所以,这意味着4列超过90%的数据相当于“非数”。这些对我们的结果几乎没有影响。 执行上述操作的另一种方法是手动扫描/读取列,并删除对我们的结果影响不大的列。...以上只是数据科学所需要的一小部分。清理完数据后,您可以在处理数据之前对其进行可视化(数据可视化),并根据结果进行预测。

    2.3K20

    全栈必备之SQL简明手册

    SQL语句可以根据用户的需要进行组合和嵌套,以实现复杂的查询和操作。 声明式编程:采用声明式编程范式,用户只需指定所需的结果,而无需指定如何获得这些结果。...关于JOIN JOIN用于根据两个或多个表之间的列之间的关系,从这些表中查询数据。它允许用户将不同表中的相关数据连接起来,从而形成一个更完整和有意义的数据集。 JOIN基于表之间的关联键进行连接操作。...这些关联键将不同的表联系在一起,使得相关的数据能够被准确地组合在一起。在涉及两个或多个表时,用户可以同时查询多个表中的数据,从而获得更广泛和深入的结果。...列数和数据类型:JOIN操作连接表的列数和数据类型必须匹配,因为它是在表的列之间进行连接。然而,UNION操作要求所有查询结果集的列数和数据类型必须相同,因为UNION是在查询结果集之间合并数据。...查询执行计划提供了对数据库检索请求数据所需步骤的深入了解,包括使用哪些索引,如何过滤、排序和连接数据。

    33810

    explain 深入剖析 MySQL 索引及其性能优化指南

    index_merge:MySQL查询优化器发现查询可以同时使用多个索引查询结果集进行并集或交集的情况,就会使用index_merge type。...下图中两个SQL一个是AND/OR, Using intersect 和Using union 分别表示使用两个索引后的交集和并集 ?...MySQL查询优化器根据统计信息,估算SQL要查找到结果集需要扫描读取的数据行数; 这个值非常直观显示SQL的效率好坏,原则rows越少越好。显然,这里最理想的数字就是1。...这是使用索引的最慢的连接之一。 Using filesort 看到这个的时候,查询就需要优化了。MySQL需要进行额外的步骤来发现如何对返回的行排序。...它根据连接类型以及存储排序键值和匹配条件的全部行的行指针来排序全部行。

    1.8K60

    MySQL根据结果集快速创建表并插入数据的应用场景与实践

    通过根据结果集创建表,可以快速将不同数据源的数据整合到一个统一的表结构中,为后续的数据分析和决策支持提供基础。历史数据归档:随着时间的推移,业务数据量不断增加。...为了优化数据库性能,可以将历史数据定期归档到数据仓库中。通过查询结果集创建新表,可以方便地将历史数据从在线数据库迁移到数据仓库,并按照一定的规则进行组织和存储。...ORDER BY column:对查询结果进行排序,可选。...查询条件是两个表中相同vip_id的记录在多个字段上存在差异,且a表中的记录创建日期早于两天前。查询结果按a表的创建日期升序排序。注意事项索引和约束:通过结果集创建的表默认不会包含索引和约束。...在创建表后,可以根据需要为新表添加索引和约束,以提高查询性能和数据完整性。数据类型:新表中列的数据类型将根据查询结果中的数据类型自动推断。如果需要特定的数据类型或长度,可以在创建表后对列进行修改。

    8010

    Python数据分析笔记——Numpy、Pandas库

    Python数据分析——Numpy、Pandas库 总第48篇 ▼ 利用Python进行数据分析中有两个重要的库是Numpy和Pandas,本章将围绕这两个库进行展开介绍。...(3)获取DataFrame的值(行或列) 通过查找columns值获取对应的列。(下面两种方法) 通过索引字段ix查找相应的行。 (4)对列进行赋值处理。 对某一列可以赋一个标量值也可以是一组值。...3、算数运算和数据对齐 (1)Series 与Series之间的运算 将不同索引的对象进行算数运算,在将对象进行相加时,如果存在时,则结果的索引就是该索引的并集,而结果的对象为空。...(索引相同的进行算数运算,索引不同的被赋予空值) 4、排序和排名 根据某种条件对数据集进行排序。...obj.rank() (2)DataFrame数据结构的排序和排名 按索引值进行排列,一列或多列中的值进行排序,通过by将列名传递给sort_index. 5、缺失数据处理 (1)滤出缺失数据 使用data.dropna

    6.4K80

    Mssql常用经典SQL语句大全完整版–详解+实例

    C:full outer join:   全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。   ...首先,你取出1到500范围之内的一个随机数(假设500就是数据库内记录的总数)。然后,你遍历每一记录来测试ID 的值、检查其是否匹配RNumber。...根据SQL语句执行后是否返回记录集,该方法的使用格式分为以下两种:   1.执行SQL查询语句时,将返回查询得到的记录集。...DDL语句对数据库对象如表、列和视进行定义。它们并不对表中的行进行处理,这是因为DDL语句并不处理数据库中实际的数据。这些工作由另一类SQL语句—数据操作语言(DML)语句进行处理。   ...如果所请求的行尚未提取,那么当前行将自动移到文件末尾。如果打开的记录流中的记录固定地包含一个记录,那么adAsyncFetchNonBlocking将不会产生作用;才作程序将同时运行以及阻塞该常量。

    1.3K10

    MySQL 查询专题

    也可能会使用完全限定的名字来引用列。 WHERE 过滤数据 MySQL中可根据需要使用很多条件操作符和操作符的组合。为了检查某个范围的值,可使用BETWEEN操作符。 注意:是!=还是?!...NOT操作符 WHERE 子句中的 NOT 操作符有且只有一个功能,那就是否定它之后所跟的任何条件。 GROUP BY 创建分组 GROUP BY 语句根据一个或多个列对结果集进行分组。...下标从 0 开始,当根据不出现在 SELECT 清单中的列进行排序时,不能采用这项技术 如果想在多个列上进行降序排序,必须对每一列指定 DESC 关键字。...一对一关系 (夫妻关系) 从表的主键即是外键 一对多关系(部门和职员的关系) 从表有一个键作为外键 多对多(学生老师关系) 需要一个中间表, 然后指定两个外键 一般主表的记录数会少....合并结果集 union 要求两个表的列数 和 列类型 完全一致 连接查询 内连接 方言版 select xxx列 from 表A, 表b where 条件1=xxx 标准版 逗号改成inner join

    5K30

    sql必会基础3

    064 索引不会包含有NULL值的列 只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。...因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。...3,索引不会包含有NULL值的列 只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。...匹配全名、匹配最左前缀、匹配列前缀、匹配范围值、精确匹配一部分并且匹配某个范围中的另一部分; B-TREE索引的局限:如果查找没有从索引列的最左边开始,它就没什么用处。...MYSQL不能使用哈希索引进行排序,因为它们不会按序保存行。 哈希索引不支持部分键匹配,因为它们是由被索引的全部值计算出来的。

    92120

    智能主题检测与无监督机器学习:识别颜色教程

    通过这种方式,机器学习模型可以预测它从来没有公开过的新的数据列,并且根据它的训练数据返回一个精确的分类。在你已经有了预先分类的数据的情况下,监督学习对于大数据集是非常有用的。...例如,根据某些特性,两个数据可能会出现类似的情况,因此会被分组到同一个框中(更正式地称为“集群”)。通过将相似的数据聚集在一起,就可以预测出新列之前从未见过的数据,并获得一个准确的分类。...最后,你将看到如何将非监督分类应用于其他类型的数据,包括在特定类别下对股票和债券ETF基金进行分类。...然后,我们可以用无监督学习来对它们进行分类,并观察计算机如何决定在颜色之间划定界限,有效地将每一种颜色组合成一组红色、绿色或蓝色。注意红色的颜色如何形成一个更大的数值。...让我们看看如何根据颜色对每个点进行分类和标注来应用无监督的机器学习算法。 使颜色聚集成组 将数据聚集到组中最常用的算法是K-Means算法。

    2.5K40
    领券