DBA面試
第一個題有二張表A,B。A表有二個列。NAME VARCHAR(20)AGE INT 。B表也有二列 NAME VARCHAR(20)GRADE INT
A表中有三條記錄,B表中有四條記錄。問現在要用一條SQL語句根據A表中AGE字段把B表中的GRADE字段進行更新。條件為A表NAME和B表NAME相等。同樣。B表中與A表沒有相同NAME的記錄不變。
MSSQL2000
第二問題。一個表中有二個列就以上A表為例。現在A表中有多例相同的記錄。現在要把相同的記錄刪除只留一條。沒有相同記錄的記錄不變。A表中可能四條xiao的記錄。二條li的記錄。一條zhang的記錄
IFOBJECT_ID('Table_A', 'U') ISNOTNULL
DROPTABLE dbo.sample_table
GO
CREATETABLE Table_A
(
NAME VARCHAR(20),
AGE INT
);
GO
IFOBJECT_ID('Table_B', 'U') ISNOTNULL
DROPTABLE Table_B
GO
CREATETABLE Table_B
(
NAME VARCHAR(20),
GRADE INT
);
GO
--Insert the data into Table_A
INSERTINTO Table_A VALUES('AName1',20);
INSERTINTO Table_A VALUES('AName2',21);
INSERTINTO Table_A VALUES('AName3',22);
--Insert the data into Table_B
INSERTINTO Table_B VALUES('AName1',22);
INSERTINTO Table_B VALUES('BName1',19);
INSERTINTO Table_B VALUES('AName3',18);
INSERTINTO Table_B VALUES('BName2',24);
GO
--type the data
print'Table_A:';
SELECT*FROM Table_A;
print'Table_B:';
SELECT*FROM Table_B;
/*
現在要用一條SQL語句根據A表中AGE字段把B表中的GRADE字段進行更新。
條件為A表NAME和B表NAME相等。同樣。B表中與A表沒有相同NAME的記錄不變。
*/
UPDATE Table_B
SET GRADE=(SELECT AGE FROM Table_A WHERE Table_A.NAME=Table_B.NAME)
WHERE Table_B.NAME IN(SELECT Table_A.NAME FROM Table_A,Table_B WHERE Table_A.NAME=Table_B.NAME);
--display the data of Table_B
print'Table_B:';
SELECT*FROM Table_B;
/*
第二問題。一個表中有二個列就以上A表為例。現在A表中有多例相同的記錄。現在要把相同的記錄刪除只留一條。
沒有相同記錄的記錄不變。A表中可能四條xiao的記錄。二條li的記錄。一條zhang的記錄
*/
--Before inserting the data into Table_A
INSERTINTO Table_A VALUES('zhang',18);
INSERTINTO Table_A VALUES('zhang',18);
INSERTINTO Table_A VALUES('zhang',18);
INSERTINTO Table_A VALUES('zhang',18);
INSERTINTO Table_A VALUES('xiao',19);
INSERTINTO Table_A VALUES('xiao',19);
INSERTINTO Table_A VALUES('EricHu',22);
--Display the data of Table_A
PRINT'Table_A';
SELECT*FROM Table_A;
--implementint the require....
SELECTDISTINCT*INTO #Temp_Table FROM Table_A
SELECT*FROM #Temp_Table;
DELETEFROM Table_A;
INSERTINTO Table_A SELECT*FROM #Temp_Table;
DROPTABLE #Temp_Table;
SELECT*FROM Table_A;
DROPTABLE Table_A;
DROPTABLE Table_B;
GO
作者:
RDIF
出處:
http://www.rzrgm.cn/huyong/
Email:
406590790@qq.com
QQ:
406590790
微信:
13005007127(同手機號)
框架官網:
http://www.guosisoft.com/
http://www.rdiframework.net/
框架其他博客:
http://blog.csdn.net/chinahuyong
http://www.rzrgm.cn/huyong
國思RDIF開發框架
,
給用戶和開發者最佳的.Net框架平臺方案,為企業快速構建跨平臺、企業級的應用提供強大支持。
關于作者:系統架構師、信息系統項目管理師、DBA。專注于微軟平臺項目架構、管理和企業解決方案,多年項目開發與管理經驗,曾多次組織并開發多個大型項目,在面向對象、面向服務以及數據庫領域有一定的造詣。現主要從事基于
RDIF
框架的技術開發、咨詢工作,主要服務于金融、醫療衛生、鐵路、電信、物流、物聯網、制造、零售等行業。
如有問題或建議,請多多賜教!
本文版權歸作者和CNBLOGS博客共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,如有問題,可以通過微信、郵箱、QQ等聯系我,非常感謝。

浙公網安備 33010602011771號