sql从表中选出特定行,并要top几行,怎么写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql从表中选出特定行,并要top几行,怎么写相关的知识,希望对你有一定的参考价值。

如果是要特定的字段,比如只要id ,name,这两个,又怎么修改

1、TOP 关键字 是可以确定获取记录集的前几行

2、只显示ID和Name两列,就要在Select后指明需要显示的列

例如:只显示前10行记录,且只显示ID和Name列

select top 10 id,name from 表名
参考技术A select TOP 11 column 1,column 1 from table name
where id='0000'
group by column 1,column 2
order by id
基本就是这样,就看你的条件是什么了,TOP后面写11表示是显示所有结果,其他TOP后面数字是多少就显示多少行。希望有帮助,采纳为最佳答案,谢谢!!!本回答被提问者采纳
参考技术B select top 10 * from 表名 where 赛选条件 参考技术C select top 100 * from 表 where 条件

在笔记本上使用 pyspark 从表中删除行

【中文标题】在笔记本上使用 pyspark 从表中删除行【英文标题】:delete row from table using pyspark on Notebook 【发布时间】:2019-12-17 03:57:05 【问题描述】:

我正在 Databricks 笔记本上编写 pyspark 脚本来插入/更新/查询 cassandra 表,但是我找不到从表中删除行的方法,我尝试了 spark sql:

spark.sql("DELETE from users_by_email where email_address IN ('abc@test.com')")

我也看不出可以使用数据框删除数据。有什么解决方法吗?

【问题讨论】:

你能检查一下这是否有帮助***.com/questions/28563809/…或datastax-oss.atlassian.net/browse/SPARKC-392 您可以过滤掉该行,而不是删除该行 【参考方案1】:

您可以加载数据框并对其进行过滤:

import pyspark.sql.functions as f

df = spark.sql("SELECT * from users_by_email")
df_filtered = df.filter(f.col("email_address") == "abc@test.com")

然后您可以使用覆盖选项保存数据框,或者也可以将其保存在新表中。

【讨论】:

【参考方案2】:

Spark 不允许 updateDelete 查询数据帧。您需要在代码中使用 Python 外部 API 进行删除。

您可以查看下面提供.delete() 删除功能的Python API。

https://docs.datastax.com/en/developer/python-driver/3.18/api/cassandra/cqlengine/models/#cassandra.cqlengine.models.Model-methods

【讨论】:

那是 cassandra api,而不是 pyspark

以上是关于sql从表中选出特定行,并要top几行,怎么写的主要内容,如果未能解决你的问题,请参考以下文章

SQL语句查询特定时间段的数据怎么写

SQL语句:对比两张表的数据并筛选出数据不同的

从表中获取特定用户的所有行以及总和

在笔记本上使用 pyspark 从表中删除行

Java JDBC 程序在从表中获取特定行时抛出 SQL 语法错误

SQL如何查询出某一列中不同值出现的次数?