当前位置: 首页 > 面试题库 >

显示喜欢sql

孟福
2023-03-14
问题内容

我的查询是我有两个表,其中一个sec_users用以下字段调用:

pk_user, name, days_available

另一个solicitud带有以下字段的呼叫:

pk_solicitud, fk_empleado, n_dias

fk_empleadosolicitudpk_user对的外键sec_users

好吧,我有一个小报告,其中显示了每个用户剩余的空闲天数,但我也想向您显示并以相同的查询显示该用户所请求的天数

例如,休假24天的user1创建一个应用程序,并要求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;

笔记

  • 请勿FROM子句中使用逗号。 始终 使用正确的显式JOIN语法。
  • 您似乎不需要外部聚合。
  • 计算一次所需的值,然后在需要的地方使用它。


 类似资料:
  • 问题内容: 是否可以在一个查询中将多个SQL LIKE通配符串在一起-像这样? 目的是查找同时包含通配符但没有特定顺序的记录。 问题答案: 正确的SQL语法是:

  • 喜欢资讯 取消喜欢资讯 资讯喜欢列表 喜欢资讯 POST /news/{news}/likes Response Headers Status: 201 Created 取消喜欢资讯 DELETE /news/{news}/likes Response Headers Status: 204 No Content 资讯喜欢列表 GET /news/{news}/likes Respons

  • 点喜欢 取消喜欢 喜欢的人列表 点喜欢 POST /feeds/:feed/like Response Status: 201 Created { "message": [ "操作成功" ] } 通知类型 { "channel": "feed:digg", // 通知关键字 "target": 325, // 动态id "content": "@2222 点喜欢了

  • 我在一个网站上工作,我有问题,喜欢脸谱网的Buttom,当有人做一个帖子时,它应该显示喜欢的按钮,但我没有看到它 我看到一个类似的问题,其中一个用户说如果我们使用Facebook LINTER- 这是我从链接中得到的 打开应修复的图形警告 > 推断属性:应该显式提供'og:url'属性,即使可以从其他标记推断值。 推断属性:应明确提供“og:title”属性,即使可以从其他标记推断值。 推断属性:

  • 问题内容: 我当前的查询如下所示: 我环顾四周,找不到类似于LIKE IN()的东西-我认为它的工作方式如下: 有任何想法吗?我只是以错误的方式思考问题-一些我从未见过的晦涩命令。 MySQL 5.0.77-社区日志 问题答案: 一个REGEXP 可能 会更有效,但你必须对它进行基准测试,以确保,如

  • 帖子喜欢列表 帖子喜欢 帖子取消喜欢 帖子喜欢列表 GET /group-posts/:post/likes 参数 名称 类型 说明 limit integer 默认 15 ,数据返回条数 默认为15 after integer 默认 0 ,翻页标识。 响应 status 200 [ { "id": 152, "user_id": 1,// 攒点用户 "targe