-1

MYSQLDAtabaseで実行したい以下のMicrosoftSQLServerクエリがあります。

mysqlデータベースで以下のエラーが発生します:

[エラー]1064 -SQL構文にエラーがあります。1行目の[IncidentNum]、tt.name as [Ticket Type]、freetext2 as [Severity]、tp.name as [Pri'の近くで使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください。

私が使用しているMicrosoftSQLサーバークエリ:

SELECT t.tn AS [Incident Num],
       tt.name as [Ticket Type],
       freetext2 as [Severity],
       tp.name as [Priority] ts.name as [Status],
       title as [Description],
       create_time as [Created Timestamp],
       CASE WHEN th.state_id=15 THEN
       (select min(th.create_time) FROM ticket_history GROUP BY th.ticket_id,
           th.state_id having th.state_id=15  ) else create_time as [Assigned to Accenture Timestamp],
       (select min(create_time) FROM ticket_history group by ticket_id,state_id having state_id=4) as [In Progress Timestamp],
       (select min(create_time) FROM ticket_history group by ticket_id,state_id having state_id=3)as [Restored timestamp],
       (select max(create_time) FROM ticket_history group by ticket_id,state_id having state_id=2)as [Closed Timestamp],
       (select DATEDIFF(mi,max(create_time,min(create_time) FROM ticket_history group by ticket_id,state_id having state_id=12) as [Total Time spent by the ticket in 'Pending at user'status],
       cu.email as [Customer Name],
       customer_user.email AS Assignee
FROM ticket t
JOIN ticket_type tt ON t.type_id=tt.id
JOIN ticket_Priority tp ON t.ticket_priority_id=tp.id
JOIN ticket_state ts ON t.ticket_state_id=ts.id
JOIN ticket_history th ON t.id=th.ticket_id
JOIN customer_user cu ON t.customer_id=cu.customer_id
JOIN customer_user ON t.responsible_user_id=customer_user.id

ロジックを変更せずにクエリ構文を**MySQL**に変更するのを手伝ってください。

4

1 に答える 1

1

カスタム列のタイトルを定義するときは、引用符で囲みます(または、次のようにバッククォートで囲みます。

t.tn AS '[Incident Num]', // and so on

また

t.tn AS `[Incident Num]`, // and so on

エラーは同じためです。

于 2013-01-28T11:42:56.317 に答える