小编alv*_*aro的帖子

如何将逗号分隔的列值与另一个表作为行连接

我试图通过首先从我正在成功执行的"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)

c# sql t-sql sql-server sql-server-2014

6
推荐指数
2
解决办法
648
查看次数

如何从 WPF 中的 ListView 选择在 DataGrid 上添加数量列

我有一个 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)

c# data-binding wpf xaml

5
推荐指数
1
解决办法
201
查看次数

标签 统计

c# ×2

data-binding ×1

sql ×1

sql-server ×1

sql-server-2014 ×1

t-sql ×1

wpf ×1

xaml ×1