我的问题是:
我有一个“机器”表,列的行如下所示,但更长:
Microsoft应用程序错误ReportingMicrosoft Office Professional Plus 2010 Microsoft MUI (英文) Microsoft Office InfoPath MUI (英文) 2010 Microsoft Office Access MUI (英文)2010 Microsoft Office共享设置元数据MUI (英文)2010 Microsoft Office Excel MUI (英文)2010 Microsoft Office共享64位设置元数据MUI (英文)2010
我有一个“例外”表,列的行如下:
Microsoft InfoPath MUI (英文) 2010 Microsoft MUI (英文)
我想做的是只把第一个表中的文本(而不是第二个表中的文本)放到第三个表中。
对不起,如果我不清楚的话,我已经尽力用我的英语了。提前谢谢。
编辑:这是我的行的样子。点击
发布于 2012-06-05 13:27:23
假设您想要机器中的行(没有异常行),您可以这样选择它们:
select *
from Machines
where columnName not in (select columnName from Exceptions)然后,可以使用insert into这样插入它们(假设机器和newTable具有相同的列):
insert into newTableName
select *
from Machines
where columnName not in (select columnName from Exceptions)如果它们有不同的列,则可以选择它们。
由于它们都位于同一列和行中,因此需要使用like检查它们是否存在,如果存在,则使用replace删除所需的部分。
发布于 2012-06-05 13:30:18
你想要的是:
select m.line
from (select distinct line
from Machines m
) left outer join
Exceptions e
on m.line = e.line
where e.line is NULL我把你的问题解释为机器有很多行,其中有一行文字。您想要机器中不属于例外的不同行。
发布于 2012-06-12 08:00:29
我知道我的问题很老了,但由于我重新做了整个程序,我找到了另一个答案,所以如果它能帮助到某人:
for (i = 0; i < SplitMachine.Length; i++)
{
for (j = 0; j < SplitExceptions.Length; j++)
{
if (string.Compare(SplitMachine[i],SplitExceptions[j]) == 0)
{
ListMachines.RemoveAt(i);
}
}
}SplitMachine是一个包含我的软件的字符串数组,StringExceptions是一个包含我不想显示的软件的字符串数组,所以如果我的SplitMachine中的字符串与SplitExceptions中的字符串匹配,我将在SplitMachine中删除相关的字符串。
我希望这是明确的,并能帮助到某人。
https://stackoverflow.com/questions/10898080
复制相似问题