>

현재 mysql보기를 변경하려고하는데보기를 내보낼 때 고유 한 행 ID를 갖습니다.

행 번호 또는 자동 증가 기능을 사용하는 방법을 찾으려고 노력하고 있지만보기 에서이 작업을 수행하는 방법을 모르겠습니다.

다음은 질의입니다 :

alter view daily_report as SELECT 
@id := @id + 1 as id
,c.extension as Extension
,RESPONSIBLEUSEREXTENSIONID as ExtID
, sum(Duration) as Total_Talk_Time_seconds
, round(sum(Duration) / 60,2) as Total_Talk_Time_minutes
, sum(if(LEGTYPE1 = 1,1,0)) as Total_Outbound   
, sum(if(LEGTYPE1 = 2,1,0)) as Total_Inbound
, sum(if(Answered = 1,0,1)) as Missed_Calls
, count(DISTINCT b.NOTABLECALLID) as Total_Calls
, NOW()
, curdate()
FROM cdrdb.session a
LEFT JOIN cdrdb.callsummary b
        ON a.NOTABLECALLID = b.NOTABLECALLID
LEFT join cdrdb.mxuser c
      ON a.RESPONSIBLEUSEREXTENSIONID = c.EXTENSIONID
      CROSS JOIN (SELECT @id := 0 ) as var
WHERE b.ts >= curdate()
AND c.extension IN (7295,7306,7218,7247,7330,7000,7358)
group by c.extension;

보기에 고유 한 행 ID를 갖도록 select 문에 행 수 또는 무언가를 사용하는 방법이 있습니까?

  • 답변 # 1

    사용자 변수 사용

    SELECT @id := @id + 1 as id, <other field>
     FROM ( <your tables> )
     CROSS JOIN (SELECT @id := 0 ) as var
    
    

  • 이전 일치하지 않는 폴더 구조 및 패키지 이름으로 명령 행에서 java 실행
  • 다음 javascript - 컨테이너 중앙으로 DIV를 가로로 스크롤하는 방법은 무엇입니까?