如果我有一個表是這樣的:如何找到一列中的最小值在SQL
id name value
1 abc 1
2 def 4
3 ghi 1
4 jkl 2
如何選擇仍然有id, name, value
但只有與最小值的人一個新的表。
在這個例子中,我需要這個表背:
1 abc 1
3 ghi 1
如果我有一個表是這樣的:如何找到一列中的最小值在SQL
id name value
1 abc 1
2 def 4
3 ghi 1
4 jkl 2
如何選擇仍然有id, name, value
但只有與最小值的人一個新的表。
在這個例子中,我需要這個表背:
1 abc 1
3 ghi 1
尋找那些價值是非常簡單的:
SELECT *
FROM YourTable
WHERE value = (SELECT MIN(Value) FROM YourTable);
至於把這些行與另一個表中正確的語法,即將取決於您正在使用的數據庫引擎。
不知道到底,如果這是你想要做什麼,但我認爲這會工作:
--creating #temp1 to recreate your table/example
CREATE TABLE #TEMP1
(id INT NOT NULL PRIMARY KEY,
name CHAR(3) NOT NULL,
value INT NOT NULL)
INSERT INTO #TEMP1
VALUES
(1,'abc',1),
(2,'def',4),
(3,'ghi',1),
(4,'jkl',2)
-verify correct
SELECT * FROM #temp1
--populate new table with min value from table 1
SELECT *
INTO #TEMP2
FROM #TEMP1
WHERE value = (SELECT MIN(value)
FROM #TEMP1)
SELECT * FROM #TEMP2
什麼是你的DBMS?如果它支持'ROW_NUMBER',那很簡單。 – dnoeth
@dnoeth我正在使用postgresql – toastedDeli
檢查@ Lamak的答案,這更簡單。 – dnoeth