我不坐在LAMP設置,但這裏是你如何寫這樣的東西。 (使用ms sql2008)與mysql命令非常相似。是什麼讓你的查詢有點模糊,你是否會通過頻率?你不顯示頻率的原因是什麼/有人會知道頻率值的分組?
創建測試表和負載值:
create table #testTable
(
id int identity(1,1),
Frequency int default null,
Temperature decimal default null
)
INSERT into #testTable (Frequency, Temperature)
VALUES
(10000, 50),
(10000, 30),
(10000, 50)
;
declare @someValue int = 10000;
select
tt.id,
tt.Temperature
from
#testTable tt
where
tt.Frequency = @someValue
上面的代碼適用於只有一個值。
現在你說你不知道以前的頻率下面的代碼會產生結果給你,因爲你沒有提供一個頻率。下面的代碼的問題是你可以通過輸出看到這些行是如何分組的。 (下面只是將代碼從上面使用表。)
select
z.id,
z.Temperature
from
(
select distinct frequency from #testTable tt group by tt.Frequency
) as t
inner join #testTable z on t.Frequency = z.Frequency;
意志頻率一直不變?如果是這樣,那麼只是從查詢 – QuinnFTW 2014-08-29 18:15:35
排除它的數據庫的工作是給你你請求的領域。決定這不是它的工作「嘿,這個領域只是重複,我會跳過它」。您可以確定哪些字段完全相同,然後根本不請求它們。這意味着你必須運行查詢兩次。一次尋找傻瓜,另一次消除愚蠢。 – 2014-08-29 18:15:49
你可以簡單地將它從你的選擇中排除, 但是如果你想選擇但是唯一的,那麼你可以使用DISTINCT – 2014-08-29 18:42:18