0
SELECT DISTINCT(reserve_dummy.isbn) as reserved_dummy.isbn,
       reserved_dummy.price,
       reserved_dummy.qty,
       reserved_dummy.date,
       reserved_dummy.total 
FROM reserved_dummy

SQL 構文にエラーがあります。MySQL サーバーのバージョンに対応するマニュアルで、1 行目の「.isbn,reserved_dummy.price,reserved_dummy.qty,reserved_dummy.date,reserved_dummy」付近で使用する正しい構文を確認してください。

SELECT DISTINCT(reserve_dummy.isbn) as reserved_dummy.isbn,
       reserved_dummy.price,
       reserved_dummy.qty,
       reserved_dummy.date,
       reserved_dummy.total 
FROM reserved_dummy

ここで私の間違いを理解するのを手伝ってください。前もって感謝します

4

4 に答える 4

0

エラーは、SELECT DISTINCT(x.y) AS x.y ....構文を使用するときにテーブルのプレフィックスが原因で発生します。SELECT DISTINCT(x.y) AS y ....

これを取り出すと、クエリが機能するはずです:

SELECT 
    DISTINCT(reserve_dummy.isbn) as isbn,
    reserved_dummy.price,
    reserved_dummy.qty,
    reserved_dummy.date,
    reserved_dummy.total 
FROM 
    reserved_dummy
于 2013-08-12T09:50:05.667 に答える
0
SELECT DISTINCT(isbn) AS isbn,
       price,qty,
       date,total 
FROM reserved_dummy

SQL DISTINCT 句の構文は次のとおりです。

SELECT DISTINCT columns FROM tables

.エイリアシング時に (ドット) 演算子を使用しないでください

于 2013-08-12T09:44:24.607 に答える
0

すべてのフィールド名の前にテーブル名を付けるという奇妙な考えをやめてください

SELECT DISTINCT(isbn) as isbn,price,qty,date,total FROM reserved_dummy
于 2013-08-12T09:44:34.280 に答える
0

このようなクエリは実行できません。あなたはすることができます

select distinct isbn, price, qty, date, total from reserved_dummy

個別のレコードが得られます。

ただし、このクエリから何を取得したいのかわかりません。

おそらく isbn が主キーです。その場合は次のようになります。

select `isbn`, `price`, `qty`, `date` from reserved_dummy

動作するはずです。

フィールド名を囲むバッククォート記号に注意してください。これは、"date" が MySQL の関数名であり、引用符なしでフィールド名として使用すると失敗するためです。

同じ isbn を持つ複数のレコードがあり、最新のものからデータを取得したい場合は、次のようなクエリを実行できます。

select `isbn`, `price`, `qty`, `date`
from reserved_dummy
where (`isbn`, `date`) in (
    select isbn, max(`date`) from reserved_dummy group by isbn
)

あなたが探しているものを手に入れるために。

于 2013-08-12T10:06:10.470 に答える