Hello, I am trying to update an existing table in the column called "stratum" (which it is actually doing) which is about 129 records, but it is also changing the other values in that column to missing. I tried using the logic provided by @LewisC_sas but it is still resolving the other values to missing.
proc sql;
UPDATE C3B.RP_SAMPLE2 as A
SET STRATUM = (select STRATUM FROM WORK.SAMPLE_RESTRAT as B
WHERE A.servicepointid=b.servicepointid AND A.recorderid=b.recorderid AND A.Sample_ID=B.Sample_ID AND B.Sample_ID IN (17))
WHERE Stratum IN (Select stratum from WORK.SAMPLE_RESTRAT as B);
quit;
;
I'm only guessing that you want to change stratum only for sample_id = 17... In that case it should look like:
proc sql;
UPDATE C3B.RP_SAMPLE2 as A
SET STRATUM = (select STRATUM FROM WORK.SAMPLE_RESTRAT as B
WHERE A.servicepointid=b.servicepointid AND A.recorderid=b.recorderid AND A.Sample_ID=B.Sample_ID)
WHERE Sample_ID IN (17);
quit;
I'm only guessing that you want to change stratum only for sample_id = 17... In that case it should look like:
proc sql;
UPDATE C3B.RP_SAMPLE2 as A
SET STRATUM = (select STRATUM FROM WORK.SAMPLE_RESTRAT as B
WHERE A.servicepointid=b.servicepointid AND A.recorderid=b.recorderid AND A.Sample_ID=B.Sample_ID)
WHERE Sample_ID IN (17);
quit;
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.