2017-04-04 126 views
-2

這裏是我的代碼SQL語法錯誤或接近 「ORDER」

SELECT 
    customerid, numseats, fistname, surname, totalcost 
FROM 
    leadcutomer, flightbooking; 
ORDER BY 
    'totalcost' DESC; 

我得到的錯誤是:

ERROR: syntax error at or near "ORDER"

我使用PG管理員4,什麼是錯的呢?

+5

多餘的';'在第二行methinks結束。 –

+0

[踢壞的習慣:使用舊式JOIN](http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins。 aspx) - 在ANSI - ** 92 ** SQL標準(** 25年**之前)中將舊式*逗號分隔的表*樣式列表替換爲* proper * ANSI'JOIN'語法不鼓勵使用 –

+2

'ORDER BY'totalcost'' ...這是告訴Postgres按字符串排序,這沒有多大意義。改爲使用'ORDER BY totalcost'。 –

回答

0

您在查詢中遇到多個問題。我會寫這樣的:

SELECT customerid, numseats, firstname, surname, totalcost 
FROM leadcutomer l JOIN 
    flightbooking b 
    ON ?? = ?? 
ORDER BY totalcost DESC; 

的具體問題:

  • 你正在做一個CROSS JOIN和帽子可能是不希望。
  • 您在FROM子句中使用逗號而不是正確的顯式JOIN語法。
  • FROM子句末尾有一個分號。
  • 您按照常數而不是列來排序。
+0

SELECT客戶ID,numseats,名字,姓氏,TOTALCOST FROM leadcustomer升JOIN flightbooking b ON customer.customerid =客戶ID ORDER BY DESC TOTALCOST; –

+0

我缺少一個從表客戶條款項,我在做什麼錯 –

+0

@PeterHorvath'customer' <>'leadcustomer'?。 –

相關問題