Sql server T-SQL连接
我需要在SQL中连接以下语句 我加入了两个表,Sql server T-SQL连接,sql-server,tsql,Sql Server,Tsql,我需要在SQL中连接以下语句 我加入了两个表,MEDINFO表和IMMUNIZE表 只要不是null或01/01/1901,每个放炮代码日期都应该有一条记录 输出必须如下所示: "Admin-" + medinfo_field_31 + ", Manuf-" + medinfo_field_32 + ", Lot-" + medinfo_field_33 + ", Exp-" + medinfo_field_34 + ", Site-" + medifno_field_35 + ", Dose-
MEDINFO
表和IMMUNIZE
表
只要不是null
或01/01/1901
,每个放炮代码日期都应该有一条记录
输出必须如下所示:
"Admin-" + medinfo_field_31 + ", Manuf-" + medinfo_field_32 + ", Lot-" + medinfo_field_33 + ", Exp-" + medinfo_field_34 + ", Site-" + medifno_field_35 + ", Dose-" + medinfo_field_36
select
case when i.immunize_shot_Code = 'FLU'
then concat(m.medinfo_field_12,',',m.medinfo_field_19,',',m.medinfo_field_24...)
when i.immunize_Shot_Code = 'MENI'
then concat(m.medinfo_field_11,',',m.medinfo_field_11)
when i.immunize_Shot_code = 'TETA'
then concat(m.medinfo_field_13,',',m.medinfo_field18,',')
end as concat_value
from medinfo m
join immunize i on m.id = i.medinfo_id --change this to match your join
where (shot_code_date is not null or shot_code_date <> '01-01-1901');
以下是我必须创建的SQL语句的条件:
IF immunize_shot_code = 'FLU',
then concatenate medinfo_field_12 and medinfo_field_19 thru medinfo_field_24
IF immunize_shot_code = 'MENI',
then concatenate medinof_field_11 and medinfo_field_25 thru medinof_field_30
IF immunize_shot_code = 'TETA',
then concatenate medinfo_field_13 thru medinfo_field_18 and medinfo_field_31 thru medinfo_field_36"
谢谢你的建议 这看起来像以下内容:
SELECT
(CASE WHEN Immunize_shot_code='Flu'
THEN medinfo_field_12+', '+med_info_field_19+ ', '+med_info_field_20+', '+med_info_field_21+ ', '+med_info_field_22+', '+med_info_field_23+', 'med_info_field_24
WHEN immunize_shot_code='MENI'
THEN [CONCATINATE AS PER ABOVE]
.....
.....
END) as ImmuCode
FROM TABLE_1
像上面提到的一些语句一样,您可以使用如下类似的
CASE
语句:
"Admin-" + medinfo_field_31 + ", Manuf-" + medinfo_field_32 + ", Lot-" + medinfo_field_33 + ", Exp-" + medinfo_field_34 + ", Site-" + medifno_field_35 + ", Dose-" + medinfo_field_36
select
case when i.immunize_shot_Code = 'FLU'
then concat(m.medinfo_field_12,',',m.medinfo_field_19,',',m.medinfo_field_24...)
when i.immunize_Shot_Code = 'MENI'
then concat(m.medinfo_field_11,',',m.medinfo_field_11)
when i.immunize_Shot_code = 'TETA'
then concat(m.medinfo_field_13,',',m.medinfo_field18,',')
end as concat_value
from medinfo m
join immunize i on m.id = i.medinfo_id --change this to match your join
where (shot_code_date is not null or shot_code_date <> '01-01-1901');
选择
i.immunize_shot_Code='流感'时的病例
然后concat(m.medinfo_字段_12',',',,m.medinfo_字段_19',',,m.medinfo_字段_24…)
当i.immunize\u Shot\u Code='MENI'
然后concat(m.medinfo_字段_11',,',m.medinfo_字段_11)
当i.immunize\u Shot\u code='TETA'
然后concat(m.medinfo_field_13',',m.medinfo_field18',')
以concat_值结束
来自medinfo m
join immunize i on m.id=i.medinfo_id——将此更改为与您的join匹配
式中(放炮代码日期不为空或放炮代码日期“01-01-1901”);
调查案例。。。什么时候我们在这里帮助您,而不是为您做这件事。当免疫注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射注射。。。