『壹』 sql2000中怎麼在數據中間插入一行數據~
樓上說的部分是對的,但有幾點需要指出。如果你的id欄位是自增的標識欄位的話,它的序號是不可逆的(我說的是自動,當然手動可是實現重新順序編號),再就是sql200中你不能在兩行記錄之間再插入一行的(讓新插入的記錄再原記錄之間)。
1、像你說方法在形式上可以達到預想的效果:看上去好像在原來的第2行記錄與第3行記錄之間「插入」了一條新記錄,但是前面的ID列(如果是自增的話)是不會再按1、2、3、4的順序重新編號的,他是不會自動重新順序編號的,他會變成1、2、4、5……
2、你的想法是完全沒有必要的。對於資料庫每條記錄之間是完全平等的關系,不管資料庫中誰在上誰在下。資料庫只是一個存放數據的倉庫,如果要向用戶展示裡面的數據的話是要用視圖或者查詢的,不會直接取數據表中人為的找的,要是那樣也就失去資料庫的本質變成了一般的數據文件了。
3、資料庫一般都會結合某種應用程序聯合應用,起到快速檢索用戶所需數據的作用,並能實現一定的排序、分組、統計等功能。
綜上建議你不要繼續你的工作。
『貳』 SQL語句向表中插入一行記錄
INSERT INTO 語句
INSERT INTO 語句用於向表格中插入新的行。
語法
INSERTINTO表名稱VALUES(值1,值2,....)
也可以指定所要插入數據的列:
INSERTINTOtable_name(列1,列2,...)VALUES(值1,值2,....)
『叄』 SQL語句怎麼插入行
insertintotablename(欄位1,欄位2,欄位3...)values(值1,值2,值3...)
『肆』 sql 如何在指定的位置插入行
很簡單啊
update 你的表名字 set YH_IP=你你所要的值 where YH_NAME='123'
有重復了一遍,呵呵,謝謝哈。
『伍』 SQL用SQL語句怎麼查詢一張表的中,每行的最大值,並且把最大值,插入到最後一列中.
查出的maxnum就是最大值。修改語句自己寫吧。
oracle的比較簡單
select greatest(num1, num2, num3, num4) maxnum from tb1;
sqlserver的比較復雜 需要用到其他的條件, tb表需要有主鍵或唯一鍵
select 主鍵或唯一鍵, max(a) maxnum from
(select 主鍵或唯一鍵,num1 a from tb1
union all
select 主鍵或唯一鍵,num2 a from tb1
union all
select 主鍵或唯一鍵,num3 a from tb1
union all
select 主鍵或唯一鍵,num4 a from tb1) t1
group by t1.主鍵或唯一鍵;
『陸』 sql 插入多行數據
-- or
insert into library
select '445501','TP3/12','資料庫導論','王強','科學出版社',17.90
union select '445502','TP3/12','資料庫導論','王強','科學出版社',17.90
union select '445503','TP3/12','資料庫導論','王強','科學出版社',17.90
『柒』 sql 如何從多行中取出連續的行
DB2 測試通過
SELECT a.時間 , a.數量
FROM TAB a, TAB b
WHERE b.時間 = (a.時間 + 1)
UNION
SELECT b.時間, b.數量
FROM TAB a, TAB b
WHERE b.時間 = (a.時間 + 1)
ORDER BY 時間 ASC
時間 數量
12 3
13 5
16 8
17 3
18 7
『捌』 如何用SQL語句向一個表中插入多行記錄
insert一般是用來給表插入一條指定的列值的,但是,insert還存在另一種形式,可以利用它將一條select語句的結果插入表中。
這就是所謂的insert select,顧名思義,它是由一條insert語句和一條select語句組成的。假如你從另一張表中合並客戶列表到你的Custumers表,不需要每次讀取一行,然後再將它用insert插入,可以如下進行:
insert into Custumer(cust_id,
cust_cintact,
cust_name,
cust_email,
cust_address,
cust_country)
select cust_id,
cust_cintact,
cust_name,
cust_email,
cust_address,
cust_country
from CustNew;
(8)sql插入行並取出擴展閱讀
insert select中的列名為簡單起見,這個例子在insert和select語句中使用了相同的列名,但是,不一定要求列名匹配。事實上,DBMS甚至不關心select返回的列名,它使用的是列的位置。
因此,select中的第一列(不管其列名)將用來填充表列中的指定的第一個列,第二列將用來填充表列中指定的第二個列,如此等等。
『玖』 sql 插入行
語法 CHARINDEX ( expression1 , expression2 [ , start_location ] ) 參數 expression1 一個表達式,其中包含要尋找的字元的次序。expression1 是一個短字元數據類型分類的表達式。 expression2 一個表達式,通常是一個用於搜索指定序列的列。expression2 屬於字元串數據類型分類。 start_location 在 expression2 中搜索 expression1 時的起始字元位置。如果沒有給定 start_location,而是一個負數或零,則將從 expression2 的起始位置開始搜索。 返回類型 int 注釋 如果 expression1 或 expression2 之一屬於 Unicode 數據類型(nvarchar 或 nchar)而另一個不屬於,則將另一個轉換為 Unicode 數據類型。 如果 expression1 或 expression2 之一為 NULL 值,則當資料庫兼容級別為 70 或更大時,CHARINDEX 返回 NULL 值。當資料庫兼容級別為 65 或更小時,CHARINDEX 僅在 expression1 和 expression2 都為 NULL 時返回 NULL 值。 如果在 expression2 內沒有找到 expression1,則 CHARINDEX 返回 0。
編輯本段例子
例一: CustomName包含客戶的First Name和Last Name,它們之間被一個空格隔開。我們用CHARINDX函數確定兩個名字中間空格的位置。通過這個方法,我們可以分析ContactName列的空格位置,這樣可以只顯示這個列的last name部分。 select top 5 substring(ContactName,charindex(' ',ContactName)+1,len(ContactName)) as [Last Name] from customers CHARINDEX函數找到First Name和Last Name之間的空格,所以SUBSTRING函數可以分開ContactName列,這樣就只有Last Name被選出。在CHARINDEX函數返回的整數上加1,這樣Last Name不是從空格開始。 例二: 計算Northwind.dbo.Customer表中Addresses欄位中包含單詞Road或者它的縮寫Rd的記錄數,選擇語句類似這樣: select count(*) from Northwind.dbo.Customers where CHARINDEX('Rd',Address) > 0 or CHARINDEX('Road',Address)> 0
『拾』 T-SQL語句中如何使用INSERT語句插入多行數據
SQLSERVER裡面可以採用下面兩種辦法。 使用SELECT INTO 插入行 SELECT INTO 語句創建一個新表,並用 SELECT 的結果集填充該表。新表的結構由選擇列表中表達式的特性定義,例如: SELECT Shippers.*, Link.Address, Link.City, Link.Region, Link.PostalCode INTO NewShippers FROM Shippers JOIN LinkServer.DB.dbo.Shippers AS Link ON (Shippers.ShipperID = Link.ShipperID) SELECT INTO 可將幾個表或視圖中的數據組合成一個表。也可用於創建一個包含選自鏈接伺服器的數據的新表。 使用INSERT...SELECT 插入行 INSERT 語句中的 SELECT 子查詢可用於將一個或多個其它的表或視圖的值添加到表中。使用 SELECT 子查詢可同時插入多行。 下面的 INSERT 語句將 titles 中數據的 type 是 modern cooking 的所有行的數據插入到一個單獨的表中:USE pubsINSERT INTO MyBooks SELECT title_id, title, type FROM titles WHERE type = 'mod_cook' 子查詢的選擇列表必須與 INSERT 語句列的列表匹配。如果沒有指定列的列表,選擇列表必須與正向其插入的表或視圖的列匹配。