SELECT lastname, (select EDITID from table2 where Field = '234') as edited
from table
--
CREATE TABLE Q1
(
[last name] varchar(10)
,EditId INT
)
GO
INSERT INTO Q1 VALUES ( 'a' , 1 )
GO
CREATE TABLE Q2
(
Field varchar(10)
,EditId INT
)
GO
INSERT INTO Q2 VALUES ( '234' , 15 )
GO
--
--
IF EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'EDITID' AND Object_ID = Object_ID(N'dbo.Q2'))
BEGIN
EXEC(' SELECT [last name], ( SELECT TOP 1 EDITID from Q2 where Field = ''234'' ) EDITID
from Q1 ' )
END
ELSE
BEGIN
SELECT [last name], EDITID = 0
from Q1
END
--
--
/*------------------------
OUTPUT
------------------------*/
last name EDITID
---------- -----------
a 15
(1 row(s) affected)
--
--
ALTER TABLE Q2
DROP COLUMN EditId
--
--
IF EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'EDITID' AND Object_ID = Object_ID(N'dbo.Q2'))
BEGIN
EXEC(' SELECT [last name], ( SELECT TOP 1 EDITID from Q2 where Field = ''234'' ) EDITID
from Q1 ' )
END
ELSE
BEGIN
SELECT [last name], EDITID = 0
from Q1
END
--
--
/*------------------------
OUTPUT
------------------------*/
last name EDITID
---------- -----------
a 0
(1 row(s) affected)
--
--
IF EXISTS(SELECT TOP 1 1 FROM INFORMATION_SCHEMA.COLUMNS WHERE [TABLE_NAME] = 'Q2' AND [COLUMN_NAME] = 'EDITID')
BEGIN
EXEC(' SELECT [last name], ( SELECT TOP 1 EDITID from Q2 where Field = ''234'' ) EDITID
from Q1 ' )
END
ELSE
BEGIN
SELECT [last name], EDITID = 0
from Q1
END
--
--
IF COL_LENGTH('dbo.Q2','EDITID') IS NOT NULL
BEGIN
EXEC(' SELECT [last name], ( SELECT TOP 1 EDITID from Q2 where Field = ''234'' ) EDITID
from Q1 ' )
END
ELSE
BEGIN
SELECT [last name], EDITID = 0
from Q1
END
--
Maybe if you provide the table schemas it might help us understand it better.