mysql - 需要访问由条件定义的表的字段

标签 mysql

我需要访问由查询条件定义的数据库表的字段。我需要访问 SERVICE_LEG 列并从该列过滤数据。

SELECT 
pa1.countryname,
pw.serviceprovideractorwid,
pa2.id,
pw.orderid,
pw.issorderref,
po.modelcode,
pw.itemid,
pe1.eventcode AS STARTEVENTCODE,
pe2.eventcode AS ENDEVENTCODE,
  CASE 
  WHEN pw.enddate < pof.retdate THEN 'TO_SERVICE'
  ELSE 'FROM SERVICE'
  END AS "SERVICE_LEG",
pa1.roleid,
pad.activitycode,
pw.tat,
pw.totelapse
FROM phwactivitydetail pw
JOIN phdactor pa1 ON pa1.actorwid = pw.orderissactorwid
JOIN phdactor pa2 ON pa2.actorwid = pw.serviceprovideractorwid
JOIN phdobject po ON po.objectwid = pw.objectwid
JOIN phdevent pe1 ON pe1.eventwid = pw.starteventwid
JOIN phdevent pe2 ON pe2.eventwid = pw.endeventwid
JOIN phaorderflowcatch pof ON pof.orderdid = pw.orderdid
JOIN phxactivitydef pad ON pad.activitydefdid = pw.activitydefdid
JOIN gldcalendar gc ON gc.datenum = pw.enddatenum;

谢谢。

最佳答案

使用外部子查询来实现。

演示:

SELECT * 
FROM 
(
    SELECT 
    pa1.countryname,
    pw.serviceprovideractorwid,
    pa2.id,
    pw.orderid,
    pw.issorderref,
    po.modelcode,
    pw.itemid,
    pe1.eventcode AS STARTEVENTCODE,
    pe2.eventcode AS ENDEVENTCODE,
      CASE 
      WHEN pw.enddate < pof.retdate THEN 'TO_SERVICE'
      ELSE 'FROM SERVICE'
      END AS "SERVICE_LEG",
    pa1.roleid,
    pad.activitycode,
    pw.tat,
    pw.totelapse
    FROM phwactivitydetail pw
    JOIN phdactor pa1 ON pa1.actorwid = pw.orderissactorwid
    JOIN phdactor pa2 ON pa2.actorwid = pw.serviceprovideractorwid
    JOIN phdobject po ON po.objectwid = pw.objectwid
    JOIN phdevent pe1 ON pe1.eventwid = pw.starteventwid
    JOIN phdevent pe2 ON pe2.eventwid = pw.endeventwid
    JOIN phaorderflowcatch pof ON pof.orderdid = pw.orderdid
    JOIN phxactivitydef pad ON pad.activitydefdid = pw.activitydefdid
    JOIN gldcalendar gc ON gc.datenum = pw.enddatenum
) t
WHERE t.SERVICE_LEG > 100;

关于mysql - 需要访问由条件定义的表的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36330948/

相关文章:

php - 在javascript函数中设置变量

mysql - 按范围或按列表分区 - Mysql?

mysql - 如何将迁移与可执行文件绑定(bind)

mysql - sql选择问题(mysql)

mySQL查询代码和索引优化

php - PHP foreach 循环中的分组项目

mysql - zabbix 触发来自 2 个字段的 2 个值之间的差异

mysql - Mariadb 在日志文件中显示密码

javascript - 如何使用 AJAX 从 jquery 访问数据库单元

php - MYSQL 显示的每条数据都有独特的 facebook 按钮