GVKun编程网logo

Python 和 Postgresql max、min 和 avg 为每个返回相同的值

2

在本文中,我们将给您介绍关于Python和Postgresqlmax、min和avg为每个返回相同的值的详细内容,此外,我们还将为您提供关于@size(max=value)和@min(value)@m

在本文中,我们将给您介绍关于Python 和 Postgresql max、min 和 avg 为每个返回相同的值的详细内容,此外,我们还将为您提供关于@size(max = value)和@min(value)@max(value)之间的差异、awk和perl实现sum/avg/max/min、Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略、grails – 简单的groovy运算符问题:Math.min(params.max?params.int(‘max’):10,100)的知识。

本文目录一览:

Python 和 Postgresql max、min 和 avg 为每个返回相同的值

Python 和 Postgresql max、min 和 avg 为每个返回相同的值

如何解决Python 和 Postgresql max、min 和 avg 为每个返回相同的值

  • 我有一个 Postgresql 表,其中包含 7 列数字数据。
  • 当我使用 psycopg2 发出 python 命令来检索 min 时, avgmax 用于每列。
  • 它返回 min_col1(decimal(100))avg_col1(decimal(100))max_col1(decimal(100)) 而不是 min_col1(decimal(50))avg_col1(decimal(100))max_col1(decimal(200))

每列给出不同数字的相似结果。

这在 psql 中运行 sql 时工作正常,即它为每个 minmaxavg 提供正确的数字。

关于如何纠正这个问题的任何想法?

这是我使用的代码:

sql = """
with hours as (
select generate_series(
date_trunc(''hour'',Now()::date),date_trunc(''hour'',Now()::timestamp),''1 hour''::interval
  ) as hour
)
select
    hours.hour,max(temperature) as temp_max,round(avg(temperature),2) as temp_avg,min(temperature) as temp_min,max(humidity) as humid_min,round(avg(humidity),2) as humid_avg,min(humidity) as humid_min,max(pressure) as press_max,min(pressure) as press_min,round(avg(pressure),2) as press_avg,max(wind_direction) as wind_dir_max,round(avg(wind_direction),2) as wind_dir_avg,min(wind_direction) as wind_dir_min,max(wind_speed) as wind_speed_max,round(avg(wind_speed),2) as wind_speed_avg,min(wind_speed) as wind_speed_min,max(wind_gust) as wind_gust_max,round(avg(wind_gust),2) as wind_gust_avg,min(wind_gust) as wind_gust_min,max(rainfall) as rainfall_max,round(avg(rainfall),2) as rainfall_avg,sum(rainfall) as rainfall_sum
from hour
left outer join wx on date_trunc(''hour'',created) = current_date
group by 
    created,temperature,humidity,pressure,wind_direction,wind_speed,wind_gust,rainfall
order by 1;
"""
cursor.execute(sql)

data = cursor.fetchall()

for d in data:
print("Hour",data[0])
    print("D1 = ",data[1])
    print("D2 = ",data[2])
    print("D3 = ",data[3])
    print("D4 = ",data[4])
    print("D5 = ",data[5])
    print("D6 = ",data[6])
    print("D7 = ",data[7])

这只是返回的前 8 个项目。 如果您需要任何其他信息,请告诉我,因为这是第一次在此处提交问题。 谢谢。 PS 我使用的是 Python 3.9.1 和 Postgresql 11。

@size(max = value)和@min(value)@max(value)之间的差异

@size(max = value)和@min(value)@max(value)之间的差异

我想做一些域验证

在我的对象中,我有一个整数,

现在我的问题是我是否写

@Min(SEQ_MIN_VALUE)@Max(SEQ_MAX_VALUE)private Integer sequence;

 @Size(min = 1, max = NAME_MAX_LENGTH) private Integer sequence;

如果是整数,则哪一个适合域验证。

有人可以解释一下两者之间的区别吗?

谢谢。

答案1

小编典典

@Min@Max用于验证数字字段,其可以被String(代表数字), ,,int 等和它们各自的原始包装。short``byte

@Size 用于检查字段的长度约束。

按照文档@Size的支持StringCollectionMaparrays@Min@Max支持原语及其包装。请参阅文档。

awk和perl实现sum/avg/max/min

awk和perl实现sum/avg/max/min

假设data文件中每行是一个数字,我们来使用awk语言和perl语言对这些数字做求和、求平均、求最大、求最小等计算。

【awk版本】

1、求和

cat data|awk ''{sum+=$1} END {print "Sum = ", sum}''




2、求平均

cat data|awk ''{sum+=$1} END {print "Average = ", sum/NR}''




3、求最大值

cat data|awk ''BEGIN {max = 0} {if ($1>max) max=$1 fi} END {print "Max=", max}''




4、求最小值(min的初始值设置一个超大数即可)

cat data | awk ''BEGIN {min = 1999999} {if ($1<min) min=$1 fi} END {print "Min=", min}''





【perl版本】

1 求和

cat data|perl -lane ''{$sum+=$F[0]}END{print "Sum:".$sum}''




2 求平均

cat data|perl -lane ''{$sum+=$F[0]}END{print "Average=",$sum/$.}''




3 求最大值

perl -MList::Util=max -lane ''{push @a,$F[0]}END{print max @a}'' data



4 求最小值
perl -MList::Util=min -lane ''{push @a,$F[0]}END{print min @a}'' data




Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

 

 

目录

SQL命令实现四则运算、desc降序、like模糊查询、distinct去重的案例代码

1、四则运算

grails – 简单的groovy运算符问题:Math.min(params.max?params.int(‘max’):10,100)

grails – 简单的groovy运算符问题:Math.min(params.max?params.int(‘max’):10,100)

你能告诉我表达方式吗?

Math.min(params.max ? params.int(''max'') : 10,100)

作品?它不适合常规三元组,那么这个特殊的运算符是什么?

谢谢

解决方法

也许把它分成两个表达式会有所帮助. params.max? params.int(‘max’):10是三元表达式……其结果最终成为Math.min的第一个arg(100为另一个arg).

看起来最终结果是一个限制为最多为100的整数,默认为10.

关于Python 和 Postgresql max、min 和 avg 为每个返回相同的值的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于@size(max = value)和@min(value)@max(value)之间的差异、awk和perl实现sum/avg/max/min、Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略、grails – 简单的groovy运算符问题:Math.min(params.max?params.int(‘max’):10,100)的相关知识,请在本站寻找。

本文标签: