问题描述
我的数据如下
std::string line;
while (std::getline(inputstream,line))
{
unsigned long tmp = std::stoul(line,&numchars,16);
process(tmp);
}
我想复制列df.loc[df['FinalStartPunch'].dt.hour == 0,'FinalStartPunch'] = df['FinalStartPunch'] - pd.timedelta(1,unit='D')
包含name subject
a m1
b m2
c m1,m3
d m4,m5,m6
e m7
的整个行。原始数据的列多于此处显示的列。我将在subject
列中复制等于,
的行,因此我将重复,
1次和subject
2次
我不知道c
列中有多少个单元格,d
列中的单元格中的值数没有上限
然后我想在重复的行上仅保留一个值,以便主题列中的所有值都显示一次
subject
解决方法
如果您运行的是SQL Server 2016或更高版本,则可以使用string_split()
:
select t.name,value as subject
from mytable t
cross apply string_split(subject,',')
string_split()
返回一个唯一的列,称为value
。