[英]sql 'select max' query
我有一個名為“ table_name”的表,大致像這樣
+----+-----------+
| ID | title |
| 1 | title 1 |
| 2 | title 2 |
| ...| ......... |
| ...| ......... |
| n | title n |
+----+-----------+.
我需要一個返回此結果的查詢
+------+-----------+
| n+1 | title 1 |
| n+1 | title 2 |
| ... | ......... |
| ... | ......... |
| n+1 | title n |
+------+-----------+
(n + 1是從table_name中選擇max(ID))
我怎樣才能做到這一點?
只需將一個子查詢添加到選擇列表中:
select (select max(ID) + 1 from tablename), title
from tablename
視窗功能
SELECT MAX(ID) OVER() + 1, title
FROM table_name
您可以選擇此最大ID作為變量,然后只需在選擇中使用它即可:
DECLARE @maxId INT = (SELECT MAX(ID) FROM [dbo].[table1]);
SELECT @maxId, t.title, t.column2, t.column3 ... from [dbo].[table2] t
對於MySQL
select (1+max(ID)) as ID ,title
from table_name;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.