如何用sql語句將銷量排名前十的商品查詢出來

時間 2022-09-19 05:20:53

1樓:老馮文庫

假設訂單明細表orderdetails的結構如下:

create table orderdetails

(order_id char(10) not null    foreign key references orders(order_id),

p_id char(10) not null    foreign key references product(p_id),

p_price float         not null,

p_number int not null

constraint pk_orderdetails_oid_pid primary key(order_id, p_id)

)查詢銷量排名前十的商品資訊(商品編號、銷量)的sql語句如下:

select     top 10 p_id, sum(p_number)

from     orderdetails

group by    p_id

order by    sum(p_number) desc

2樓:匿名使用者

至少給個表結構啊,不然就算想給思路都沒有辦法。

有十家店鋪每家店鋪買的東西不同,如何用sql取出每家店鋪銷量前十的商品

3樓:匿名使用者

子查詢就可以

select 店鋪,東西,sum(數量) as 總數 from table group by 店鋪,東西

以上求出每樣東西在每個店鋪的銷售數量。

然後編號

select 店鋪,東西,rank()over(partition by 店鋪 order by 總數 desc) as 編號 from select 店鋪,東西,sum(數量) as 總數 from table group by 店鋪,東西

然後再拿出編號小於11的行,就可以了。

寫法不是完全對,可能有些出入,這個就需要自己修改了。

求sql語句,統計某月銷售量前10

4樓:jerry流雲

按照一行記錄代表銷售乙個數量單位商品的話,t_sql語句如下:

declare @begindate datetime, @enddate datetime

select @begindate = '開始日期', @enddate = '結束日期'

select top 10 title, count(1) as sellnumber

from tablea

where sdate between @begindate and @enddate

group by title

5樓:匿名使用者

select top 10 a表.id ,tt.* from a表,(select title as vv,count(*) as sort from a表 group by title order by sort desc) as tt where month(sdate)='月份' and a表.

title=tt.vv order by sort desc

或是select top 10 id,count(title) as x,price,sdate from a表 month(sdate)='月份' group by id,price,sdate order by count(title) desc

看看哪個適合你

6樓:匿名使用者

select top 10 title from a where month(sdate)=月份 group by title

7樓:匿名使用者

不完整的問題都能解答,我真是服了

8樓:匿名使用者

統計商品銷量最大的商品:

select top 10 title,count(*)as 銷量 from a表 where month(sdate)=月份 group by title order by count(title)desc

我感覺id應該是自動生成的主鍵才對,所以不應該對id進行彙總個數。

這個地方嚴格說來應該還有標記唯一商品的編碼才對,應該按照商品編碼(制定唯一的商品)進行彙總,因為存在商品名稱相同,**不同的情況,這個時候應該視為不同商品。這種情況要另外考慮。如下:

select top 10 title,price,count(*)as 銷量 from a表 where month(sdate)=月份 group by title,price order by count(*)desc,price

順便問一句怎麼沒有商品數量字段?統計銷量應該是彙總商品數量才對(用sum函式),而不是統計記錄個數,如果有的話(將count(*)改為sum(商品數量)即可)

9樓:楊晨銳

你總有乙個 銷售量的 欄位吧..

直接 top 10 不可以麼?

select top 10 字段 from a

面試題 : 求大神啊用sql語句列出銷售金額最多的前三個商品名稱和金額

sql如何按商品前3條最新的銷售記錄並查詢這些商品的銷售記錄

10樓:絕對領域小冰冰

sql=select top 3 * from sp order by 銷售時間 desc

11樓:匿名使用者

資料庫是什麼?

銷售時間什麼型別?

列出誰們的總銷售筆數,總銷量,月銷售筆數?--是名稱的還是分類的?

你最好把你結果羅列一下

用sql語句如何查詢前10行之後的10行

12樓:匿名使用者

select top 10 * from 表名 select top 10 * from 表名 order by 自動增長編號 desc 請把上述兩行的漢字替換成你的表名或列名(欄位名)

13樓:匿名使用者

兩次排序 公升序取前20 再降序取前10

14樓:匿名使用者

select top 10 * from a where mainkey is not in

(select top 10 mainkey from a

)a為表名,mainkey為表的主鍵

15樓:劉老伍

select top 10 * from (select top 20 * from 表 order by id asc) as a order by id desc

16樓:匿名使用者

select top(20) * from 表where lsh not in(select top(10) lsh from 表where 條件) and 條件

使用一條sql語句查詢出前十條記錄

17樓:匿名使用者

select *

from (select row_number() over(order by rowid) row_number, a.*

from table1 a)

where row_number <= 10

如何用sql語句將銷量排名前十的商品查詢

18樓:匿名使用者

1、建立測試表,

create table test_sale(id varchar2(20),sale_num number(10));

2、插入測試資料;

insert into test_sale values('goods_1',15);

insert into test_sale values('goods_2',125);

insert into test_sale values('goods_3',28);

insert into test_sale values('goods_4',36);

insert into test_sale values('goods_5',72);

insert into test_sale values('goods_6',85);

insert into test_sale values('goods_7',99);

insert into test_sale values('goods_8',100);

insert into test_sale values('goods_9',102);

insert into test_sale values('goods_10',35);

commit;

3、查詢表中全量資料;select t.*, rowid from test_sale t;

4、編寫語句,查詢表中sale_num前5的記錄數(前10方案類似);

select * from (select t.*, row_number() over(order by sale_num desc) rn from test_sale t ) t where rn <= 5;

19樓:

select * from test(這裡是表名字) order by id(這裡是根據什麼排) desc(desc是降序的意思) limit 0,10; (第零個開始 往後搜尋十個)

根據降序一排就出來了 括號內是解釋

20樓:

: 資料庫是什麼? 銷售時間什麼型別? 列出誰們的總銷售筆數,總銷量,月銷售筆數?--是名稱的還是分類的? 你最好把你結果羅列一下

求sql語句是 求某月銷售量最高的商品名稱

21樓:sql的藝術

select

商品名稱

from

商品表where

商品id in

(select top 10 商品id

from

(select 商品id,sum(銷售數量) 銷售總數量from 銷售表

where 銷售時間 between '2017-01-01' and '2017-01-31 23:59:59.997'

group by 商品id

) aa

order by 銷售總數量 desc

)上例是顯示在'2017-01-01' 和 '2017-01-31 23:59:59.997'之間銷售數量最多的前十名商品名稱

如何用SQL迴圈查詢語句,如何用SQL語句查詢Excel資料

declare i int select i 304 while i 600 你要查詢的最大分數 begin exec select 學校 學校名稱,count as 人數,304 305 as 總成績 from cjd where 總成績 convert varchar 5 i and 總成績 c...

如何用SQL語句將資料批量插入資料庫

你的文件是什麼型別還是表?如果是表,直接插 insert into 要插表 對應欄位1,對應欄位2,對應欄位3 select 欄位1,欄位2,欄位3 from 文件 如果文件不是表,而是其他型別的,先把資料放到excel,同過excel匯入資料庫 再通過上面的方式插入吧 把這些資料放到excel表中...

如何用sql語句查詢excel資料

在通過ado對excel物件進行連線時 此時excel則認為是乙個資料來源 需要配置對excel資料來源對應的連線串,這個連線串中包括了provider資訊 其實類似對資料庫進行連線操作時,都需要指定連線字串 以下是一行連線串源 strconnstring provider microsoft.ac...

如何用SQL語句刪除check約束

刪除約束的語法如下 alter table 表名 drop constraint 約束名 附加 在建立表的時候同時新增約束的寫法 use studb goif exists select from sysobjects where name stuinfo drop table stuinfo go...

動態sql語句中字串如何表示,如何用sql語句在字串中新增字元

用2個單引號,比如 寶馬 是字串 declare sql varchar 1000 set sql select from test09 where typename 寶馬 exec sql 用拼接的方式啊,如 set a select from set b tablename set sql a ...