Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Oracle查询以从具有不同条件的单个表中获取两个值_Sql_Oracle11g - Fatal编程技术网

Sql Oracle查询以从具有不同条件的单个表中获取两个值

Sql Oracle查询以从具有不同条件的单个表中获取两个值,sql,oracle11g,Sql,Oracle11g,我把这个放在桌子下面。我试图获得以下信息: 第一个条件:当第一次发生电话时,从表中获取除标签信息以外的所有票证详细信息 第二个条件:将最新的标签信息与第一个条件一起输入标签字段 Here is the sample data: +----------+-----------+--------------+--------------+-------------------+----------------+-------------------+ | TICKETID | SUB

我把这个放在桌子下面。我试图获得以下信息:

第一个条件:当第一次发生电话时,从表中获取除标签信息以外的所有票证详细信息

第二个条件:将最新的标签信息与第一个条件一起输入标签字段

Here is the sample data:
    +----------+-----------+--------------+--------------+-------------------+----------------+-------------------+
    | TICKETID | SUBTICKET |  DEPARTMENT  | CUSTOMER REP | COMMUNICATIONTYPE |      TAG       | COMMUNICATIONDATE |
    +----------+-----------+--------------+--------------+-------------------+----------------+-------------------+
    | A112421  |       323 | FOOD PROCESS | ANDY         | NOTES             | SATISFIED      | 5/21/18 9:30 AM   |
    | A112421  |       324 | FOOD PROCESS | ANDY         | NOTES             | AVERAGE        | 5/22/18 7:10 AM   |
    | A112421  |       325 | FOOD PROCESS | ANDY         | TELEPHONE         | AVERAGE        | 5/24/18 4:10 PM   |
    | A112421  |       326 | KITCHEN      | ALEX         | NOTES             | SATISFIED      | 5/25/18 6:10 AM   |
    | A112421  |       327 | KITCHEN      | ALEX         | EMAIL             | NOT SATISFIED  | 5/25/18 7:15 AM   |
    | A112421  |       328 | KITCHEN      | SAM          | EMAIL             | AVERAGE        | 5/26/18 5:25 PM   |
    | A112421  |       329 | KITCHEN      | SAM          | TELEPHONE         | ABOVE AVERAGE  | 5/26/18 5:45 PM   |
    | A112421  |       330 | TRANSPORT    | RAHUL        | NOTES             | VERY SATISFIED | 5/27/18 6:25 AM   |
    +----------+-----------+--------------+--------------+-------------------+----------------+-------------------+

The results I am looking for as follows:

    +----------+-----------+--------------+--------------+-------------------+----------------+--------------------+
    | TICKETID | SUBTICKET |  DEPARTMENT  | CUSTOMER REP | COMMUNICATIONTYPE |      TAG       | COMMUNICATION DATE |
    +----------+-----------+--------------+--------------+-------------------+----------------+--------------------+
    | A112421  |       325 | FOOD PROCESS | ANDY         | TELEPHONE         | VERY SATISFIED | 5/24/18 4:10 PM    |
    +----------+-----------+--------------+--------------+-------------------+----------------+--------------------+
非常感谢您的帮助


提前谢谢。

试试这个?我正在使用SQL

    DECLARE @FIRSTCOMMDATE DATETIME =(SELECT MIN (communicationdate)  from table) 

DECLARE @MOSTRECENTCOMMDATE DATETIME =(SELECT MAX (communicationdate)  from table) 
;WITH MOSTRECENTCOMMDATE AS

(
     SELECT  TICKETID, TAG, COMMDATE, SUBTICKET 
    FROM TABLE_NAME (NOLOCK) 
    WHERE communicationdate =@MOSTRECENTCOMMDATE

) 


     SELECT  TICKETID, SUBTICKET, DEPARTMENT, CUSTOMER_REP, REC.TAG,COMMUNICATIONTYPE, COMMDATE
    FROM TABLE_NAME  t1 (NOLOCK) 
INNER JOIN MOSTRECENTCOMMDATE rec on rec.ticketid =t1.ticketid and rec.substicket=t1.subticket 
    WHERE communicationdate =@FIRSTCOMMDATE

让我们看看你的尝试。嗨,瓦姆西,我已经开始学习查询。我可以使用select和when语句来提取所有列。但是,我仍然坚持这种情况。我不知道该怎么办。