我想在一个视图中加入3个表; 这是情况:
我有一张表格,其中包含申请在大学校园内生活的学生的信息.我有另一张桌子,列出了每个学生的霍尔偏好(其中3个).但是这些首选项中的每一个仅仅是一个ID号,并且ID号在第三个表中具有相应的Hall Name(没有设计该数据库......).
差不多,我INNER JOIN在桌子上有他们的偏好和他们的信息,结果是......
John Doe | 923423 | Incoming Student | 005
Run Code Online (Sandbox Code Playgroud)
哪个005会是HallID.所以现在我想将它HallID与第三个表匹配,其中该表包含一个HallID和HallName.
所以,我希望我的结果像......
John Doe | 923423 | Incoming Student | Foley Hall <---(INSTEAD OF 005)
Run Code Online (Sandbox Code Playgroud)
这是我目前拥有的:
SELECT
s.StudentID, s.FName,
s.LName, s.Gender, s.BirthDate, s.Email,
r.HallPref1, r.HallPref2, r.HallPref3
FROM
dbo.StudentSignUp AS s
INNER JOIN RoomSignUp.dbo.Incoming_Applications_Current AS r
ON s.StudentID = r.StudentID
INNER JOIN HallData.dbo.Halls AS h
ON r.HallPref1 = h.HallID
Run Code Online (Sandbox Code Playgroud) 这是一些递归反转字符串的Java代码.
有人可以解释它是如何工作的吗?
public static String reverse(String str) {
if ((null == str) || (str.length() <= 1)) {
return str;
}
return reverse(str.substring(1)) + str.charAt(0);
}
Run Code Online (Sandbox Code Playgroud)
我不明白这是如何工作的.