Sql server 内部连接两个组合列的值
我需要在两个组合柱上进行内部连接Sql server 内部连接两个组合列的值,sql-server,tsql,Sql Server,Tsql,我需要在两个组合柱上进行内部连接 SELECT [FullName], [Email], [Phone], [Goal], [TimeOfLead], [Location], [IPAddress] FROM [Leads] INNER JOIN Clinics on [Clinics.City] + ', ' + [Clinics.State] as Location = Leads.Location WHERE Leads.Location = Cl
SELECT
[FullName], [Email], [Phone], [Goal], [TimeOfLead], [Location], [IPAddress]
FROM
[Leads]
INNER JOIN
Clinics on [Clinics.City] + ', ' + [Clinics.State] as Location = Leads.Location
WHERE
Leads.Location = Clinics.Location
线索
位置
将始终与诊所
表中的城市
和州
相同
如果我解释得不够好,请让我知道,我会修改这个问题。这样就可以了。您不需要再次使用
WHERE
子句,因为您是在内部联接
本身中建立连接的
SELECT DISTINCT
L.[FullName], L.[Email], L.[Phone], L.[Goal], L.[TimeOfLead], L.[Location], L.[IPAddress]
FROM
[Leads] L
INNER JOIN
Clinics C on L.Location = C.City + ', ' + C.State
下面是一个SQL,其中包含一些示例数据和工作查询
创建表格,填充样本数据
CREATE TABLE Leads
(
FullName NVARCHAR(50) NULL,
Email NVARCHAR(50) NOT NULL,
Phone NVARCHAR(20) NULL,
Goal NVARCHAR(50) NULL,
TimeOfLead NVARCHAR(50) NULL,
Location NVARCHAR(50) NOT NULL,
IPAddress NVARCHAR(50) NULL
);
CREATE TABLE Clinics
(
ClinicName NVARCHAR(40) NOT NULL,
City NVARCHAR(40) NOT NULL,
State NVARCHAR(2) NOT NULL,
);
INSERT INTO Leads (FullName, Email, Location) VALUES
('John Duh', 'john@duh.com', 'San Francisco, CA'),
('Jane Dough', 'jane@dough.com', 'Austin, TX'),
('Bill Clinton', 'billy@presidents.com', 'Hope, AK');
INSERT INTO Clinics VALUES
('San Fran Clinic','San Francisco','CA'),
('Austin Clinic','Austin','TX'),
('Boise Clinic','Boise','ID'),
('Hope Clinic','Hope','AK');
执行查询
SELECT DISTINCT
L.[FullName], L.[Email], L.[Phone], L.[Goal], L.[TimeOfLead], L.[Location], L.[IPAddress]
FROM
[Leads] L
INNER JOIN
Clinics C on L.Location = C.City + ', ' + C.State
结果
FULLNAME EMAIL PHONE GOAL TIMEOFLEAD LOCATION IPADDRESS
John Duh john@duh.com (null) (null) (null) San Francisco, CA (null)
Jane Dough jane@dough.com (null) (null) (null) Austin, TX (null)
Bill Clinton billy@presidents.com (null) (null) (null) Hope, AK (null)
这可能是因为每个潜在客户或诊所都有不止一个记录。使用“选择不同的”来获得唯一的记录。@Jim是对的。已更新查询和示例代码以使用
DISTINCT
。