我试图通过首先从我正在成功执行的"SupplierId"列转换逗号分隔值来加入两个表.但是,当我尝试通过外键"DCLink"连接到具有供应商名称的另一个表"供应商"时,问题就出现了.
这就是我的意思:
原始表的select语句,
SELECT InquiryId, SupplierId FROM Procure_InquiryDetails
Run Code Online (Sandbox Code Playgroud)
给出了这个结果
InquiryId SupplierId
1 2,3
2 175
3 170,280
5
7 12
8 5,9
Run Code Online (Sandbox Code Playgroud)
我可以使用此sql语句从SupplierId拆分列
;WITH CTE
AS
(
SELECT InquiryId,
[xml_val] = CAST('<t>' + REPLACE(SupplierId,',','</t><t>') + '</t>' AS XML)
FROM Procure_InquiryDetails
)
SELECT InquiryId,
[SupplierId] = col.value('.','VARCHAR(100)')
FROM CTE
CROSS APPLY [xml_val].nodes('/t') CA(col)
Run Code Online (Sandbox Code Playgroud)
并获得这些结果
InquiryId SupplierId
1 2
1 3
2 175
3 170
3 280
5
7 12
8 5
8 9
Run Code Online (Sandbox Code Playgroud)
当我应用这段代码将InquiryDetails表加入供应商名称上的供应商表时,
;WITH CTE
AS
(
SELECT InquiryId,
[xml_val] …Run Code Online (Sandbox Code Playgroud) 我有一个 ListView,我选择了它的数据并将其发送到 DataGrid。我在使用 DataGrid 的数量列时遇到问题,我想计算将 ListView 项目添加到所述 DataGrid 的次数(我目前在选择同一项目时显示成功消息)。我还想计算价格和数量,并将它们显示在名为“价格”的 DataGrid 列中。
这是数据网格
<ListView x:Name="ItemGridView" ItemsSource="{Binding Items}" SelectedItem="{Binding SelectedItem}" PreviewMouseDoubleClick="ItemGridView_PreviewMouseDoubleClick">
<ListView.View>
<GridView AllowsColumnReorder="False">
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center" Orientation="Horizontal">
<Grid Margin="5">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Image Source="{Binding ItemImage}" Width="225" Height="157" Stretch="UniformToFill" StretchDirection="DownOnly" />
<StackPanel Margin="0,100,0,0">
<Border Margin="-0,-7,0,0" Height="63" Width="225" Background="{x:Null}" BorderBrush="{x:Null}" BorderThickness="0">
<TextBlock Margin="8" FontWeight="Heavy" Foreground="White" FontSize="16" Text="{Binding ItemName}"/>
</Border>
<TextBlock Margin="15,-28,0,0" FontSize="15" Text="{Binding SellingPrice}" Foreground="White"/>
</StackPanel>
</Grid>
</StackPanel>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView>
</ListView.View> …Run Code Online (Sandbox Code Playgroud)