⑴ sql重復數據只取一條記錄
1、SQL SELECT DISTINCT 語句
在表中,可能會包含重復值。這並不成問題,不過,僅僅列出不同(distinct)的值。
關鍵詞 DISTINCT 用於返回唯一不同的值。
語法:
SELECT DISTINCT 列名稱 FROM 表名稱
使用 DISTINCT 關鍵詞
2、子查詢限制返回結果
SELECT*FROMTestData
WHERE
idIN
(
--根據Data分類獲取數據最小ID列表
selectmin(id)fromTestData
groupbyData
)
⑵ sql中如何只取得第一行
oracle 的話
select * from tablename where rownum=1
⑶ sql語句只取第一行
select top 1 * from 表 order by 列
⑷ sql 當某幾列值相同 只要一行
CREATETABLE#t(pidINT,idINT,ageINT,age_mINT,sexVARCHAR(2),HIGHFLOAT,weightFLOAT)
INSERTINTO#tVALUES(6,10,1,1,'女',80,8)
INSERTINTO#tVALUES(16,10,1,5,'女',80.1,7.7)
INSERTINTO#tVALUES(17,10,1,5,'女',80.1,7.8)
INSERTINTO#tVALUES(18,10,1,6,'女',80.2,7.9)
GO
SELECT*FROM#t
go
SELECT*
FROM#t
wherepidin(
SELECTMAX(pid)pidFROM#tWHEREid=10GROUPBYid,age,age_m
)
沒錯啊,哥們,你中間紅框的數據我沒取,實際上是跟下面1-5 的一樣,你有拿語句測試過沒有??
⑸ 如何用SQL語句實現相同列值只取一行
select top 1 * from 表 where 公司 in (select distinct 公司 from 表)
⑹ 如何用SQL語句實現相同列值只取第一行
最好能給出示例數據,和想要的結果。
可以如下:
select * from table a where 電話= (select min(電話) from table b where a.公司 = b.公司)
或
select * from table a where not exists(select * from table b where a.公司 = b.公司 and a.電話 > b.電話)
⑺ SQL 語句如何在兩張表中分組查詢只取一條記錄
sql語句中,關聯查詢只取分組的一條記錄的方法如下:
select userid,ranking,username from table //查詢欄位有userid username
where userid+ranking in //where 條件包括userid+ranking in是集合選擇關鍵字
(
select userid+max(ranking) from table // max(ranking)選擇ranking列的最大值
group by userid //根據userid分組
)
以上sql中,內層select查出了最大的ranking,根據userid分組,外層查詢中選擇userid+ranking。
⑻ sql語句中已經讀取多行顯示到頁面,如果我想要每次只顯示出一行,sql語句該怎麼寫
SelectCommand="SELECT top 1 ArticleName FROM news SELECT TOP 1 ArticleName FROM news Article order by id desc"></asp:AccessDataSource><
⑼ sql中怎麼獲取任意一行
Top 1 配合 Order by newid() 就可以了。
下面是一個 有50行數據的 測試表中, 隨機處理的例子。
-- 測試表
1> CREATE TABLE #t (
2> id INT
3> );
4> GO
-- 測試數據
1>
2> INSERT INTO #t
3> SELECT
4> number
5> FROM
6> master..spt_values
7> WHERE
8> type='P'
9> AND number between 1 and 50;
10> GO
(50 行受影響)
-- 第一次隨機。
1>
2> SELECT top 1
3> *
4> FROM
5> #t
6> ORDER BY
7> newid();
8> go
id
-----------
14
(1 行受影響)
-- 第二次隨機。
1> SELECT top 1
2> *
3> FROM
4> #t
5> ORDER BY
6> newid();
7> go
id
-----------
25
(1 行受影響)
⑽ SQL語句如何在兩張表中分組查詢,而只取一條記錄
sql語句中,關聯查詢只取分組的一條記錄的方法如下:
select userid,ranking,username from table //查詢欄位有userid username
where userid+ranking in //where 條件包括userid+ranking in是集合選擇關鍵字
(
select userid+max(ranking) from table // max(ranking)選擇ranking列的最大值
group by userid //根據userid分組
)
以上sql中,內層select查出了最大的ranking,根據userid分組,外層查詢中選擇userid+ranking。