如何查詢表中,各個分類的前面2條資料,用一條sql語句

時間 2021-10-14 22:23:54

1樓:執念如此

select * from 表名 where 分類名 = '' or 分類名 = '' order by 排序欄位 asc limit 條數總和(貌似只能用來查不同分類的相同條數,比如都是兩條都是三條)

2樓:匿名使用者

select top2 * from 表名 where 條件1union select top2 * from 表名 where 條件2

union select top2 * from 表名 where 條件3

分類比較多的話考慮用儲存過程(遊標)

3樓:匿名使用者

如你所願,一條語句完成

select [name],[fl],[id] from t2 where [id] in ((select min([id])[id] from t2 group by [fl])union(select min([id])[id] from t2 where [id] not in (select min([id]) from t2 group by [fl]) group by [fl]))order by [fl],[id]

4樓:幫助

select top 2 * from 表名 where f1=1;//這求出fl=1的前兩條

select top 2 * from 表名 where f1=2//這求出fl=2的前兩條

select top 2 * from 表名 where f1=1 union select top 2 * from 表名 where f1=2//求出fl=1的前兩條並上fl=2的前兩條

//不知道我明不明白你說的意思,我感覺我理解可能有誤

5樓:匿名使用者

select top2 * from 表名 where 條件1 and 條件2

6樓:良是良子的良

dsadsadada

mysql:只用一條sql語句,如何查出一個表裡,不同條件對應的資料條數

7樓:匿名使用者

看一下這個sql

select

sum(

if((*** = 1 and age = 2),1,0)),sum(

if((*** = 1 and age = 5),1,0)),sum(

if((*** = 1 and age = 10),1,0))from a_test

這個sql現在就是得出的這個結果

求一條sql語句,查詢2個表,根據其中一個表的資料行數進行排序的問題

8樓:

那就改一下關聯欄位就行了

select * from 表a order by (select count(1) from 表b where 使用者表id=表a.id)

另外,您還可以把行數在查詢中顯示出來,並按照行數從多到少的順序排列:

select *,

(select count(1) from 表b where 使用者表id=表a.id) as 行數

from 表a

order by (select count(1) from 表b where 使用者表id=表a.id) desc

就是說:你要是懂得了表示式和子查詢同樣可以作為排序使用,以後許多問題你就會迎刃而解了

9樓:匿名使用者

查詢 表a.id 按照 表b裡面的改使用者購買的產品的資料行數 進行排序

按照你的說法,就是想得到 購買產品的 a.id 的排序.

表b -------------------欄位 id 購買產品名稱 使用者表id(儲存的是a表.id) 很顯然 購物清單表裡有a.id

select b.使用者表id

from (

select 使用者表id, cout(購買產品名稱) as idfrom b

group by 使用者表id ) as border by b.id

希望有所幫助

10樓:匿名使用者

你都沒說是什麼資料庫系統……假設是mysql好了……select count(b.*) as 該使用者總購買數, a.姓名 from 表b b left join 表a a on (a.

id = b.使用者表id) order by 該使用者總購買數 desc

得到的結果類似:

總數 | 姓名

20 | 張三

15 | 李四

2 | 王五

不知道是不是你要的結果?

11樓:匿名使用者

select * from 表a order by (select count(1) from 表b where 表b.id=表a.id)

這個在sqlserver 2000中對的,這就是相關子查詢的用法。

不知道提問者用的是什麼資料庫

12樓:極速love鋒狂

先根據id查詢購買的產品數即行數(hangshu)select id,count(*) as hangshu into #1 from 表b group by id desc

在根據行數排序查詢對應的id購買的商品記錄select 表a.id,表b.購買產品名稱 from #1,表b where #1.

id = 表b.id order by hangshu desc

13樓:匿名使用者

這個問題不難,需要利用到對查詢的結果欄位使用別名,具體的sql語句如下:

select 表a.id,表a.姓名,(select count(1) from 表b where 表b.

使用者表id=表a.id) as 購買數量 from 表a order by 購買數量

呵呵,希望解決了問題,^_^

14樓:匿名使用者

select a.id from a, bwhere a.id = b.id

group by a.id

order by count(b.id) desc

15樓:匿名使用者

select *,

(select count(1) from 表b where 使用者表id=表a.id) as 行數

from 表a

order by 行數 desc

16樓:囂十一狼

樓主是不是說一下最後查詢想顯示的欄位列表啊

sql 查詢前10條記錄中的某些表項,怎樣用一條sql語句描述

17樓:

select top 10 項1,項2,項3,項4 from 表 order by *** desc

18樓:匿名使用者

select 項名 from (select top 10 * from 表名 order by *** desc)

19樓:傳奇勇者

select * from 表名 where 項名 in (select top 20* from 表名 order by *** desc)

怎樣用一條sql語句從一個表中提取出不同型別的記錄,必須包含每種型別的資料

20樓:匿名使用者

如果只要

bai其中的

dua和b中的隨zhi

便兩條dao的話可以

回這樣答子寫

select * from

(select top 2 * from test where t_type='a'

order by id

) aunion all

select * from

(select top 2 * from test where t_type='b'

order by id)

sql語句如何查詢一個表中某一列的相同資料?

21樓:

寫個函式或儲存過程,使用遊標變數,根據條件,把滿足條件的記錄儲存到另張表裡面

22樓:匿名使用者

select * from 表名 where count(列名) >1 order by 列名

23樓:匿名使用者

select * from 表名 tb where (select count(1) from # where id=tb.id)>=2

SQL中如何查詢A表中的資料有部分存在B表中並顯示出來

四舍 入 1 select from b表 where item no in select 條碼 from a表 2 select from a表,b表 where a表.條碼 b表.item no 擴充套件資料 sql參考語句 刪除表drop table tabname 這是將表連同表中資訊一起刪...

如何把在servlet中查詢到的資料庫表中的資料返回到

在servlet中 如 emp emp empdao.findall 查詢資料庫 用request.setatrribute emp emp 儲存資料 在jsp中 emp e emp request.getattribute emp 取出資料 放到一個範圍中,再在servlet跳轉到頁面就可以了! ...

SQL如何聯合查詢兩張表中不相同的部分

小丁創業 聯合查詢兩張表中不相同的部分的操作方法和步驟如下 1 第一步,在計算機桌面上單擊 management studio 圖示,如下圖所示,然後進入下一步。2 其次,完成上述步驟後,在介面中單擊 新建查詢 選項,如下圖所示,然後進入下一步。3 接著,完成上述步驟後,在此介面的兩個表中繼續輸入用...