我是SQL的新手,我知道这是非常基本但我真的不知道怎么做!我正在加入两个表,每个表让我们说有5列,加入它们会给我10列,我真的不想要.我想要的是从两个表中选择特定列,以便它们仅在连接后显示.(我想仅将连接结果减少到特定列)
SELECT * FROM tbEmployees
JOIN tbSupervisor
ON tbEmployees.ID = tbSupervisor.SupervisorID
Run Code Online (Sandbox Code Playgroud)
上面的语法将为我提供我不想要的所有列.我只想要来自tblEmployees表的EmpName,Address和来自tbSupervisor表的Name,Address,project
我知道这一步:
SELECT EmpName, Address FROM tbEmployees
JOIN tbSupervisor
ON tbEmployees.ID = tbSupervisor.SupervisorID
Run Code Online (Sandbox Code Playgroud)
但我不确定主管表.
我正在使用SQL Server.
我有这个问题:
DECLARE
@ProjectID int = 3,
@Year int = 2010,
@MeterTypeID int = 1,
@StartDate datetime,
@EndDate datetime
SET @StartDate = '07/01/' + CAST(@Year as VARCHAR)
SET @EndDate = '06/30/' + CAST(@Year+1 as VARCHAR)
SELECT tblMEP_Sites.Name AS SiteName, convert(varchar(10),BillingMonth ,101) AS BillingMonth, SUM(Consumption) AS Consumption
FROM tblMEP_Projects
JOIN tblMEP_Sites
ON tblMEP_Projects.ID = tblMEP_Sites.ProjectID
JOIN tblMEP_Meters
ON tblMEP_Meters.SiteID = tblMEP_Sites.ID
JOIN tblMEP_MonthlyData
ON tblMEP_MonthlyData.MeterID = tblMEP_Meters.ID
JOIN tblMEP_CustomerAccounts
ON tblMEP_CustomerAccounts.ID = tblMEP_Meters.CustomerAccountID
JOIN tblMEP_UtilityCompanies
ON tblMEP_UtilityCompanies.ID = tblMEP_CustomerAccounts.UtilityCompanyID
JOIN tblMEP_MeterTypes
ON …
Run Code Online (Sandbox Code Playgroud) 我有两个数据库,一个被调用Natalie_playground
,一个被调用LiveDB
.因为我想练习插入,更新的东西,我想从复制一些表LiveDB
来Natalie_playground
.
我要复制的表称为:
Customers, Computers, Cellphones, Prices
我试图做的是(使用SSMS)右键单击一个表,但那里没有Copy!
不用说,我在过去几天里试图理解枢轴/逆枢轴主题,但没有希望。我不明白什么是枢轴,什么是非枢轴。我有这张表:这张表称为Natalie_Playground
.
BuildingName BillingMonth Consumption
Building1 1/1/2011 59318
Building2 1/1/2011 6962
Building3 1/1/2011 204300
Building4 1/1/2011 69600
Building5 2/1/2011 47316
Building6 2/1/2011 162300
Building7 2/1/2011 7122
Building8 2/1/2011 7444
Run Code Online (Sandbox Code Playgroud)
我不知道是否必须使用pivot或unpivot来使我的表格看起来像这样:
BuildingName January February March .... December
Building1 59318 47316
Building2 6962 162300
Building3 204300 162300
Building4 69600 7444
Run Code Online (Sandbox Code Playgroud)