显示享受sql的日子[重复]

2024-01-16

我的查询是我有两个表,一个称为sec_users包含以下字段:

pk_user, name, days_available

另一个电话solicitud包含以下字段:

pk_solicitud, fk_empleado, n_dias

Where fk_empleado表的solicitud is the pk_user的外键sec_users table

好吧,我有一个小报告,其中显示了每个用户剩余的免费天数,但我也想通过相同的查询向您显示该用户请求的天数

例如,用户 1 有 24 天休息日,他创建了一个应用程序并要求休息 4 天和另外 10 天。我想让你显示除了剩余的天数 24-4-10 = 14 天休息之外,你还必须显示你已经使用的天数:24-14 = 消耗了 10 天。我有以下代码,但它给了我我不想要的数字:

SELECT u.pk_user, u.dias_disponibles - sum(s.n_diassolicitados) AS dias_libres, (SELECT SUM(N_DIASSOLICITADOS) as dias_disfrutados FROM solicitud)
FROM sec_users u, solicitud s
WHERE s.fk_empleado = u.pk_user
GROUP BY u.pk_user

这个函数向我展示了这一点:

Usuario             dias_libres   dias_disfrutados
==============    ==============  ==============
Usuario 1                10              79   

你必须给我看这个:

Usuario             Dias libres   Dias disfrutados
==============    ==============  ==============
Usuario 1                10              14

鼻子因为它不显示。


我怀疑你想要:

SELECT u.pk_user,
       (u.dias_disponibles - COALESCE(dias_disfrutados, 0)) AS dias_libres,
       COALESCE(dias_disfrutados, 0)
FROM (SELECT u.*,
             (SELECT SUM(N_DIASSOLICITADOS)
              FROM solicitud s
              WHERE s.fk_empleado = u.pk_user
             ) as dias_disfrutados
      FROM sec_users u 
     ) u;

Notes:

  • Never在中使用逗号FROM条款。Always使用正确、明确的JOIN syntax.
  • 您似乎不需要外部聚合。
  • 计算一次您需要的值,然后在需要的地方使用它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示享受sql的日子[重复] 的相关文章

  • 在 Microsoft Sql Server 2008R2 及更高版本上隐藏登录数据库 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 请任何人协助隐藏 sql server 2008R2 或更高版本上的可用数据库 我有一个新的登录用户 已映射到特定数据库 使用特定登录用户登录时 我可
  • Oracle使用with子句创建表

    我可以从使用形成的查询创建表吗with clause Sure CREATE TABLE t AS WITH some data AS SELECT 1 as some value FROM dual UNION ALL SELECT 2
  • 带有 CONTAINS 查询的PreparedStatement

    我有一个查询需要连续运行 28000 次 所以我认为使用准备好的语句可能是一个聪明的主意 这是我的查询 String requestWithFirstName SELECT SE ELEMENT ID SE LASTNAME SE FIRS
  • PostgreSQL 中的 LATERAL JOIN 和子查询有什么区别?

    自从 PostgreSQL 推出以来 它具备了以下功能 LATERAL连接 我一直在阅读它 因为我目前为我的团队进行复杂的数据转储 其中有许多低效的子查询 使整个查询需要四分钟或更长时间 我明白那个LATERALjoins 可能可以帮助我
  • 如何:SQL 还是 NOSQL?

    我还没有遇到过这个问题 但这就是我的想法 非常肤浅和简单化恕我直言 如果您有键值类型的存储 并且所有访问都是键查找 请使用 NOSQL 解决方案 如果您想要基于值 和子值 进行查找或者有一些更复杂的东西 例如联接 您会选择关系解决方案 事务
  • FIND_IN_SET 具有多个值[重复]

    这个问题在这里已经有答案了 我想从数据库字段搜索多个值 以下是我的查询 SELECT FROM tablename WHERE FIND IN SET 12 13 15 15 category id 我如何搜索它对我不起作用 FIND IN
  • 通过一个表中的列更新另一表中的列

    我有两张桌子 A 和 B 两者都有一个共同的列 name 并通过列 id 相互链接 表A中的 name 列是空的 而表B中有数据 我的任务是用相应的id填充从表B到表A的该列中的所有数据 我正在使用以下查询 UPDATE A SET A n
  • 在不使用 PHP 的情况下将 MYSQL 中的表字段更新为其值加上常量

    我想表演一个UPDATE in MYSQL其中我获取一个字段值 添加一个常量并将新值保存在同一字段中 假设我们有一个名为OldValue在一个名为aTable 伪代码可能是 UPDATE aTable SET OldValue OldVal
  • 触发器以捕获服务器中的架构更改

    是否可以实现类似以下触发器的东西 CREATE TRIGGER tr AU ddl All Server ON DATABASE WITH EXECUTE AS self FOR DDL DATABASE LEVEL EVENTS AS D
  • oracle 数据透视表中的列

    示例选择 select from select 1 cnt 2 sm 55 name 12 month 2011 year 12 2011 mnth txt from dual union all select 1 cnt 2 sm 54
  • Google BigQuery:如何使用 SQL 创建新列

    我想在不使用旧版 SQL 的情况下向现有表添加一列 基本的 SQL 语法是 ALTER TABLE table name ADD column name datatype 我格式化了 Google BigQuery 的查询 ALTER TA
  • android sqlite 如果不存在则创建表

    创建新表时遇到一点问题 当我使用 CREATE TABLE 命令时 我的新表按应有的方式形成 但是当我退出活动时 应用程序崩溃 并且我在 logcat 中得到一个表已存在 如果我使用 CREATE TABLE IF NOT EXISTS 则
  • SQL Server 数据库中的表具有互斥外键的最佳实践

    在这里 我正在寻找针对以下问题的优缺点的最佳解决方案 Entity1 E1 pk 与其他不同的列 Entity2 E2 pk 与其他不同的列 Entity3 E3 pk 与其他不同的列 我需要创建之间的关系Entity1 and Entit
  • 当添加列较少时追加到现有 SQLite 表,而不将数据库读入 R

    是否有一些简单的方法 无论是在 SQL 端还是在 R 端 将 data frame 附加到具有更多列的现有表 缺失的列应该用 NA 填充 如果它能够优雅地处理比表 1 列数更多的表 2 那么会加分吗 library RSQLite Crea
  • SQL日期格式转换? [dd.mm.yy 至 YYYY-MM-DD]

    是否有 mySQL 函数可以将日期从 dd mm yy 格式转换为 YYYY MM DD 例如 03 09 13 gt 2013 09 03 由于您的输入是表单中的字符串03 09 13 我假设 因为今天是 2013 年 9 月 3 日 d
  • 使用外部硬盘写入和存储 mysql 数据库

    我已经设置了 mysql 数据库在我的 Mac 上使用 java 和 eclipse 运行 它运行得很好 但现在我将生成大约 43 亿行数据 这将占用大约 64GB 的数据 我存储了大量的密钥和加密值 我有一个 1TB 外部我想用作存储位置
  • OVER ORDER BY 中的多个列

    有没有办法在 OVER ORDER BY 子句中指定多个列 SELECT ROW NUMBER OVER ORDER BY A Col1 AS ID FROM MyTable A 上面的方法工作正常 但尝试添加第二列不起作用 SELECT
  • 选择不带 FROM 但有多于一行的选择

    如何在不从现有表中进行选择的情况下生成 2 行 2 列的表 我正在寻找的是一个返回的选择语句 e g id value 1 103 2 556 Use UNION http dev mysql com doc refman 5 0 en u
  • SQL:两个没有完整列匹配的表的并集

    我有一个table A其中有一组列A1 A2和一个具有一组列的 table bB1 B2 碰巧的是A2 B1但其余列不匹配 也不应该匹配 我想附加表格 所以我使用UNION ALL 对于不匹配的列 我使用null as COLUMN NAM
  • sql查询连接两个服务器中不同数据库的两个表

    我在 ServerS 上的数据库中有两个表 tableA 在 ServerB 上的数据库中有两个表 我只想根据这些表的公共字段名对这些表执行 fullouter join 在 SQL Server 中 您可以创建一个链接服务器 在 Mana

随机推荐

  • 无法复制文件,即使在 C# 中授予了 FileIOPermission

    我正在尝试FileIOPermission在 Windows 7 中的 NET 3 5 中 我是 Windows XP 用户 并且因为我是管理员而被授予此权限 我写了下面的代码 测试一下是否可以写入C Program Files Outlo
  • 标签中的最大字符数(表名、列等)

    希望这个问题之前没有被问过 有谁知道域名的字符数限制吗 例如 如果我这样写 CREATE DOMAIN d complement activite etablissement AS character varying 它将创建一个名为的域
  • 更改 MongoDB 中现有用户的密码

    我有一个生产环境 我的 mongoDB 已启动并正在运行 DBA 要求我们更改用于身份验证的密码 执行此操作的一种方法是使用新密码再次运行 addUser 命令 如中所述更改密码 http learnmongo com posts quic
  • 如何将自定义序列化器与 Jackson 一起使用?

    我有两个 Java 类 我想使用 Jackson 将它们序列化为 JSON public class User public final int id public final String name public User int id
  • 使用声明性服务的 OSGi+Pax-Web 中的 GWT 问题

    我正在迁移在 OSGi Equinox 和 Pax web 上运行的现有 GWT 应用程序 以使用声明式服务而不是编程式服务跟踪器 我在 Equinox 中使用 Pax Web PAX WEB War 扩展器可以毫无问题地加载基于 WAR
  • 是否可以使用网络代理(例如 fiddler )将网址重定向到另一个网址

    我正在尝试解析另一个服务器中的 WSDL 文件 但该文件在整个文档中都有硬编码的 localhost 当我获取它时 显然程序抱怨 连接被拒绝 因为我的机器上没有运行任何东西 我的问题是 是否可以使用网络代理 例如 fiddler 将这些 l
  • 转到 JavaScript forEach 循环中的“下一个”迭代[重复]

    这个问题在这里已经有答案了 如何进入 JavaScript 的下一个迭代Array forEach loop 例如 var myArr 1 2 3 4 myArr forEach function elem if elem 3 Go to
  • 调整 Axes3D 标签位置

    我在 matplotlib 中的轴标签与刻度标签重叠时遇到问题 我尝试通过应用转换或调用 set y 来 手动 重新定位标签 但无济于事 这是重现该问题的片段 import matplotlib matplotlib use TKAGG i
  • 如何让C语言成为上下文无关的?

    我知道C不是上下文无关语言 一个著名的例子是 int foo typedef int foo foo x 在这种情况下 词法分析器不知道是否foo第三行是一个标识符 或者typedef 我的问题是 这是唯一的原因吗 C a 上下文相关语言
  • ReportViewer 2010 无法计算表达式

    我的项目是ASP Net WebForms 4 0框架 使用ReportViewer 10 使用Local处理模式渲染本地RDLC报表 我的问题是我的报告中的许多表达式都没有计算 例如 我在报告的页脚中有一个文本框 其中包含简单的表达式 G
  • 如何从列表理解中获取多个列表作为单独的结果?

    假设我有这样的代码 def f x return 2 x x x x range 3 xlist ylist f value for value in x 我怎样才能巧妙地得到这样的结果 xlist 0 2 4 ylist 0 1 4 注意
  • 如何使用 ant 将 jar 文件包含到 Ear 文件的 lib 文件夹中?

    我有以下文件夹结构 project ear lib folder ProjectEJBClient jar META INF folder projectEJB jar My build xml包含以下行来创建 EAR 包
  • 如何使用 Knockout 3.0 取消对可观察数组的更改?

    我的数组发生了变化 我正在使用 Sanderson 最新的数组订阅方法来捕获添加 删除更改 在此订阅中 我打算捆绑并通过网络发送我的请求 如果请求因任何原因失败 我希望能够取消对集合的任何可能的更改 我已经验证该订阅在更改传播之前就已生效
  • Silverlight DependencyProperty.SetCurrentValue 等效项

    我正在寻找相当于 NET 4 的 SL4设置当前值 http msdn microsoft com en us library system windows dependencyobject setcurrentvalue aspxAPI
  • WiX - 在两个不同位置安装相同的文件

    在我的安装程序中 我有两个可选功能 它们是同一软件版本 5 和 6 的插件 他们将相同的文件 相同的名称 相同的二进制内容 安装到应用程序的 plugins 文件夹中 但我有以下错误 C Users FooBar Documents pro
  • 如何将环境变量从 docker-compose 传递到 NodeJS 项目中?

    我有一个 NodeJS 应用程序 我想要调整其大小 该应用程序由两部分组成 服务器部分 运行一个从数据库获取数据的 API 它在端口 3000 上运行 客户端部分 它从服务器部分调用 API 端点 它运行在端口 8080 上 这样 我的客户
  • 有没有办法为嵌套函数生成 pydoc? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一种为嵌套函数生成文档 本例中为 pydoc 的方法 这可以用 pydoc 实现吗 用其他工
  • 使用 RegEx 可靠地解析 HTML 元素 [重复]

    这个问题在这里已经有答案了 可能的重复 使用 PHP 解析 HTML 的最佳方法 https stackoverflow com questions 3577641 best methods to parse html with php 我
  • va_list的重用

    我需要对一个进行两次 或更多 次传递va list 我有一个一定大小的缓冲区 我想用 sprintf 向其中写入一个格式化字符串 如果格式化的字符串不适合分配的空间 我想将分配的空间加倍并重复直到适合为止 作为旁注 我希望能够首先计算格式化
  • 显示享受sql的日子[重复]

    这个问题在这里已经有答案了 我的查询是我有两个表 一个称为sec users包含以下字段 pk user name days available 另一个电话solicitud包含以下字段 pk solicitud fk empleado n