问题标签 [query-help]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql - 更新声明
我是一名初级 SQL 用户(未受过正式培训;仅限 OJT),需要一些简单的更新语句帮助。我想写一个更新语句,允许我列出 ID。下面显示的语句是我目前的编写方式。理想情况下,该声明将允许我将其写为“植物单元在 (49-57) 中的位置。有没有办法做到这一点?感谢您提供的任何帮助。
更新plantfunctiontable set decommissioned=1 where plantunitid in (49,50,51,52,53,54,55,56,57)
sql - 计算通话时长的数学公式
几年前我在一家电信公司工作,我不得不根据以下算法生成一个计算通话时长的公式:
- t1 是第一个时期
- t2 是循环周期
- RCT 是实际通话时间(以秒为单位)
- CD 是有效通话时长(用于计费目的)
如果 RCT 小于 t1,则 CD 等于 t1
,如果 RCT 大于 t1,则 CD = t1 + x*t2,其中 x 会将 RCT“四舍五入”到 t2 的下一个最高倍数。
该算法转换为:“前 t1 秒充电,之后每 t2 秒充电一次”。
例子:
你能创建一个函数/SQL来返回“通话持续时间”CD吗?
不使用 if then else ...?
sql - 如何执行条件 SQL Server 语句?
我有一个包含事件信息的数据库,包括日期(MMDDYYYY 格式)。是否可以编写 SQL Server 语句来仅获取特定时间范围内的行?
类似这样的伪语句:
wheredate
是 SQL Server 行中的日期,并且current_date
是今天的日期。是31
几天,所以基本上是一个月的时间。
我可以在通用语句(阅读:)之后轻松处理数据SELECT * FROM events ORDER BY date ASC
,但是知道这是否可能会很“酷”(就像我学习新东西一样:P)。
sql - GROUPing 和嵌套查询的 SQL 查询帮助
给定两张桌子,
A
包含customerid
,lastchange
,的表internallink
表
B
包含internallink
,turnover
(我这里只是简单的把它改成一个通用的例子,实际的结构更复杂。SQL方言现在是mySQL。)
唯一独特的东西(每个表)是内部链接。A 中有几条记录具有相同的 customerID、不同的 lastchange 日期和不同的 internallink 值。还有其他与此相关的项目;我无法更改表格。
我需要来自 A 的记录 ID,它们是客户的最新记录(具有相同 customerID 的所有记录中的最高 lastchange 值),并且B 中与某个值条件匹配的条目链接到这些记录 ID。
我觉得
部分不是问题。
我做到了这一点:
唉,该语句给出了错误的结果,因为上面将返回我最近的值不满足条件的客户 ID,但是一些较旧的值 - 它选择最旧的值,并返回这个。但是,如果最近的条目低于阈值,那么 customerID 根本不应该出现。
我哪里出错了,正确的方法是什么?
样本数据表 A
表 B
我的测试中的实际阈值是 12000。您可以看到 customerID 不应该在结果集中,因为最近的条目低于阈值。
结果集应该是 (3,2010-11-23)(4,2010-12-01) - 但目前它还包含 (5,2010-11-28),这是错误的。
靠近一点(在您的帮助下,谢谢!),这两个语句都有效:
SELECT customerID, MAX(lastchange), internallink FROM A GROUP BY customerID; SELECT internallink FROM B WHERE (营业额 > 12000);
现在我需要的是两者的交集......具有正确的逻辑!
mysql - MySQL - 查找同一张表的行之间的差异
我有一个包含带有时间戳的聚合结果的表 - 这意味着每次的每个结果都是迄今为止的总数:
我正在尝试制定一个查询,该查询将获取每个时间范围之间的增量:
因此,每个日期 / ip 分组的每一行都会减去它之前的一行(或 0)。有什么简单的方法可以做到这一点吗?谢谢。
mysql - SQL 语句帮助 - 仅选择过去 3 个月没有订单的客户
希望你们一切都好。我需要查询。请帮我解决这个问题。
这是场景。我们有两张桌子
- 顾客
- 订单
我只想得到那些在过去三个月内没有订购任何东西的客户
请帮助我。我卡住了。提前致谢
mysql - 按组计算行中的绝对差之和
我有一个问题,我可以使用 Stata 解决,但现在我的数据已经增长到无法再从内存中处理它的大小。我希望改为在 MySQL 中执行此操作。我正在尝试计算n组之间项目的曼哈顿距离。到目前为止,我已经对数据进行了操作,希望它可以用于计算:
这个例子的曼哈顿距离是:
例如,group1 和 group2 之间的距离计算为 |.3-.2|+|.7-.6|+|0-.2|=0.4,即。股份绝对差额之和。我如何在 MySQL 中做到这一点?
在我的搜索过程中,如果找到了一些解决方案来按组计算与前一行的差异,但对于我正在寻找的内容却没有。
mysql - 需要帮助开发 SQL 以查找日期差异
我正在尝试编写一个查询,该查询将采用日期值并返回一个数值。我打算用它来跟踪检查到期前的日子。例如,我将检查到期日期输入到数据库中,然后我希望查询返回检查到期前剩余天数的值。
谢谢您的帮助。我不太擅长 SQL。我知道如何编写基本查询,但我真的不知道该怎么做。
ms-access-2010 - 如何在 MS Access 2010 中的单元格中显示空值
好的,所以我正在尝试运行一个查询,如果存在重复 ID,则在字段中显示空值。有2个表,父子关系。父表可以有一对多的子记录。在我的场景中,我们有可以对其进行许多检查的油箱。Tank 是父表,Tank_Inspections 是子表。我从油箱表中获取了一个容量数据字段,并将其与油箱检查记录连接起来,如果该油箱存在多次检查,它会显示两次。这很好,但是我不想重复计算容量,只想显示一次。我已将链接粘贴到屏幕截图的图像上,如果父表存在多条记录,它应该如何显示。突出显示的单元格应为空白。如你看到的,TankID = 65 有两个不同类型的检查,因为我从 Tank 表中获取容量字段,所以它被插入了两次。我要编写一个查询,因此如果对储罐进行两次或多次检查,则只显示一次容量并“删除”其他容量数据元素。在这种情况下,突出显示的单元格应该是空白的。建议?
mysql - 如何使用 MYSQL 在一个表中连接所有具有相同名称的行?
假设我有一个名为的数据库clubmembership
,其中有一个名称列、一个俱乐部列和一个他们在该俱乐部中扮演的角色的列。玛格丽特这个名字会在专栏中出现name
很多次,或者与她在俱乐部中出现的次数一样多。如果我想查看哪些人是缝纫俱乐部的成员,我的查询可能如下所示:
我的问题是我无法查询谁不在缝纫俱乐部。当然,简单的“不在”子句不起作用,因为有很多行没有出现缝纫。在这个数据库中,如果有人不在缝纫俱乐部,缝纫不会出现在俱乐部下,所以我想有一个在“名称”下连接具有相同名称的不同行然后可能使用“不在”子句的方法
我希望这是对这个问题的一个很好的解释。我一直在努力解决这个问题。
谢谢你的帮助!妮可