2016-06-17 8 views
0

Ich habe eine View-Tabelle, für die ich vonWie Abfrage/SELECT aus einer Sichttabelle?

drop view if exists salesdata; 

create view SalesData as 
select orders.order_id, items.item_id, (order_details.order_qty * items.unit_price) as ItemTotal, items.title, artists.artist_id 
from orders 
join order_details 
on orders.order_id = order_details.order_id 
join items 
on order_details.item_id = items.item_id 
join artists 
on items.artist_id = artists.artist_id 
order by artists.artist_id 
; 

select * from salesdata; 

select artists.artist_id, sum(order_details.order_qty * items.unit_price) as TotalSales 
from SalesData; 

jedoch die Abfrage Ich versuche, wenn ich versuchen, die Abfrage

select artists.artist_id, sum(order_details.order_qty * items.unit_price) as TotalSales 
from SalesData; 

krank werden, wird folgende Fehler

Error Code: 1054. Unknown column 'artists.artist_id' in 'field list' 

Antwort

1

Sie haben Felder auszuwählen, die in Ihrer Ansicht beschrieben sind, versuchen:

select artists.artist_id, sum(ItemTotal) as TotalSales from SalesData; 
0

Die abzuschließen Spaltennamen in der Ansicht enthalten nicht die Tabellenname-Präfixe aus der create view ... as select-Anweisung, also schließen Sie sie nicht ein, wenn Sie die Ansicht abfragen:

select artist_id, sum(order_qty * unit_price) as TotalSales 
from SalesData; 

Sie können auch die Spaltennamen in der Ansicht mit dem folgenden Befehl sehen:

describe SalesData; 
+0

I versucht, die Abfrage ohne das Präfix, aber ich bekomme einen anderen Fehler errorCode 1054 Uknown Spalte 'order_qty' in 'Feldliste' –

Verwandte Themen