GVKun编程网logo

我的平均值在哪里以及是否使用SQL都无效(我的平均值在哪里以及是否使用sql都无效的命令)

23

本篇文章给大家谈谈我的平均值在哪里以及是否使用SQL都无效,以及我的平均值在哪里以及是否使用sql都无效的命令的知识点,同时本文还将给你拓展Java-在哪里以及如何使用异常?、MSAccessSQL获

本篇文章给大家谈谈我的平均值在哪里以及是否使用SQL都无效,以及我的平均值在哪里以及是否使用sql都无效的命令的知识点,同时本文还将给你拓展Java-在哪里以及如何使用异常?、MS Access SQL获取两条记录的平均值、mysql avg()函数,获取字段的平均值、mysql 中 json 数组值的平均值等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

我的平均值在哪里以及是否使用SQL都无效(我的平均值在哪里以及是否使用sql都无效的命令)

我的平均值在哪里以及是否使用SQL都无效(我的平均值在哪里以及是否使用sql都无效的命令)

因此,对于价格超过所有产品平均价格的所有产品,我必须显示产品名称,id产品和单价。

关闭。使用子查询返回平均值,然后将其用于比较:

select ProductID,ProductName,UnitPrice
from Products p
where UnitPrice > (select avg(UnitPrice) from Products);
,

您可以使用窗口函数代替子查询:

select *
from (
    select ProductID,UnitPrice,avg(unitPrice) over() avgUnitPrice
    from Products
) p
where UnitPrice > avgUnitPrice
,

我认为您正在寻找类似的东西

with avg_cte(avg_price) as (
    select avg(UnitPrice)
    from Products)
select ProductID,UnitPrice
from Products p
     cross join avg_cte a
where p.UnitPrice>a.avg_price;

Java-在哪里以及如何使用异常?

Java-在哪里以及如何使用异常?

我正在阅读一些有关Java中异常处理的内容,以便能够编写更好的代码。好吧,我承认,我有罪。我使用了太多try-catch
{}块,ex.printStackTrace()在捕获中使用了它,甚至没有使用适当的记录器(实际上是System.outSystem.err被重定向到PrintWriter,因此生成了日志)。但是,经过几个小时的阅读,我发现自己在一个陌生的地方:未知。如果异常被设计为传递有关异常流状态的信息,那么人们如何知道WHERE是使用该信息执行操作的适当级别?

例如,当发生数据库错误时,应该返回空值或错误代码还是引发异常?如果抛出异常,应该在哪里处理该异常?我了解即使您无法对此做任何记录,甚至记录异常也没有用。但是,在GUI应用程序中,这很容易杀死您的GUI(我正在使用SWT,而且我经常看到这种情况),即使是使用该menuShown()方法的情况(ArrayIndexOutOfBounds如果未处理,异常也会关闭该应用程序)。该示例可能永远持续下去,但这是问题的摘要:

  1. 过度使用try-catch()是否会对性能产生负面影响?
  2. 使用特定的异常类型更好吗?如果我错过了可能发生的X种异常之一的捕捉,该怎么办?
    坦白说,在2-3年内,我只听说过Java标准异常的情况就占了10%。是的,有人说如果调用者不知道如何处理抛出的异常,那么他应该没有权利调用抛出方法。那正确吗?

  3. 我已经读过Anders Hejlsberg的这篇文章,说检查异常是不好的。在某些情况下,这是否应表明建议方便吞咽异常?

  4. 一幅图片值一千字;我想一些例子在这里会很有帮助。

我知道这门课程是永恒的​​,但实际上我很期待根据您的建议回顾一个150个班级的中型项目。非常感谢。

MS Access SQL获取两条记录的平均值

MS Access SQL获取两条记录的平均值

当前,我正在使用MS Excel来执行此操作,但是我想知道在MS Access中是否可行。

我想获取前一个小时和当前小时的平均值,然后将该平均值放入当前小时记录中。一个限制是不查询第一条记录,因为它没有前一个小时。

如何执行下面的伪sql代码?

SELECT Date      ,Hour      ,Node      ,Average (Value,"Value from previous hour, e.g (Hour-1) with the same date and node")FROM tblInputWHERE Hour = 2,3,4

tblInput:

+----------+------+------+------+|   Date   | Hour | Node |Value |+----------+------+------+------+|   ...    | ...  | ...  | ...  || 1/1/2-18 |   1  | AAA  | 5    || 1/1/2-18 |   2  | AAA  | 10   || 1/1/2-18 |   3  | AAA  | 15   || 1/1/2-18 |   4  | AAA  | 20   || 1/1/2-18 |   1  | BBB  | 4    || 1/1/2-18 |   2  | BBB  | 8    || 1/1/2-18 |   3  | BBB  | 12   || 1/1/2-18 |   4  | BBB  | 16   ||   ...    | ...  | ...  | ...  |+----------+------+------+------+

输出:

+----------+------+------+------+|   Date   | Hour | Node | Ave  |+----------+------+------+------+| 1/1/2-18 |   2  | AAA  | 7.5  || 1/1/2-18 |   3  | AAA  | 12.5 || 1/1/2-18 |   4  | AAA  | 17.5 || 1/1/2-18 |   2  | BBB  | 6    || 1/1/2-18 |   3  | BBB  | 10   || 1/1/2-18 |   4  | BBB  | 14   |+----------+------+------+------+

答案1

小编典典

它是:

SELECT     [Date],    Hour,    Node,    (Value +         (Select Value        From tblInput As T        Where             T.Node = tblInput.Node And            T.Date = tblInput.Date And             T.Hour = tblInput.Hour - 1)) / 2FROM     tblInputWHERE     Hour In (2,3,4)

mysql avg()函数,获取字段的平均值

mysql avg()函数,获取字段的平均值

 

mysql> select * from table1;
+----------+------------+-----+---------------------+
| name_new | transactor | pid | order_date          |
+----------+------------+-----+---------------------+
| 1hahha   | 1xiaohong  |   1 | 2019-08-04 20:45:47 |
| 2hahha   | 2xiaohong  |   2 | 2019-08-04 20:45:57 |
| 3hahha   | 3xiaohong  |   3 | 2019-08-04 20:46:02 |
| 4hahha   | 4xiaohong  |   4 | 2019-08-04 20:46:05 |
| 3hahha   | bob        |   5 | 2019-08-04 20:46:08 |
| 3hahha   | lee        |   6 | 2019-08-04 20:46:12 |
+----------+------------+-----+---------------------+
6 rows in set (0.00 sec)


mysql> select avg(pid) from table1;
+----------+
| avg(pid) |
+----------+
|   3.5000 |
+----------+
1 row in set (0.00 sec)


mysql> select (21/6);
+--------+
| (21/6) |
+--------+
| 3.5000 |
+--------+
1 row in set (0.00 sec)

 

 

 

mysql 中 json 数组值的平均值

mysql 中 json 数组值的平均值

如何解决mysql 中 json 数组值的平均值?

我有 label - 它的字符串值数组(MysqL json 类型),例如:["foo","bar"],我想获得这些值的平均值,例如: 示例 1

ID | LABEL
1  | ["foo"]
2  | ["foo"]
3  | ["foo"]
4  | ["foo"]

输出:foo:100%

示例 2

ID | LABEL
1  | ["foo"]
2  | ["foo"]
3  | ["bar"]
4  | ["bar"]

输出:foo:50% 输出:bar:50%

示例 3

ID | LABEL
1  | ["foo","bar"]
2  | ["foo","bar"] 

输出:foo:50% 输出:bar:50%

我如何用单个 sql 做到这一点?

有可能吗?

我不知道应该使用哪个代码。

解决方法

首先,您需要将 JSON 数组中的项目转换为行。

您可以使用 JSON_TABLE MySQL 函数做到这一点:

SELECT *
FROM json_table(''["foo","bar"]'',''$[*]'' COLUMNS(item text PATH ''$'')) AS jt;

结果集如下所示:

+------+
| item |
+------+
| foo  |
| bar  |
+------+

下一个问题是从结果集中提取这些值中的 calculate the distribution 个。

SELECT item,count(*) * 100.0 / sum(count(*)) OVER () AS percentage
FROM json_table(''["foo",''$[*]'' COLUMNS(item text PATH ''$'')) AS jt
GROUP BY item;

结果集如下所示:

+------+------------+
| item | percentage |
+------+------------+
| bar  |   50.00000 |
| foo  |   50.00000 |
+------+------------+

最后一步是加入表格:

SELECT item,count(*) * 100.0 / sum(count(*)) OVER () AS percentage
FROM your_table,json_table(label,''$[*]'' COLUMNS(item text PATH ''$'')) AS jt
GROUP BY item;

结果应该是你所期望的。

今天的关于我的平均值在哪里以及是否使用SQL都无效我的平均值在哪里以及是否使用sql都无效的命令的分享已经结束,谢谢您的关注,如果想了解更多关于Java-在哪里以及如何使用异常?、MS Access SQL获取两条记录的平均值、mysql avg()函数,获取字段的平均值、mysql 中 json 数组值的平均值的相关知识,请在本站进行查询。

本文标签: