【问题标题】:vbnet select inside a select to a dtvb net select inside a select to a dt
【发布时间】:2018-01-01 14:33:00
【问题描述】:

我在连接数据库的地方得到了这个小代码,选择数据并将数据写入文件。

...

sqlquery = ("select field1 as Asl, field2 as nCuen , field3 as nfac , "" as contr from [2016cl]")

Using connection As SqlConnection = New SqlConnection("server=" & srvSQL & ";database=" & bdSQL & ";uid=" & usrSQL & ";password=" & pswSQL & ";")
    connection.Open()
    Using comm As SqlCommand = New SqlCommand(sqlquery, connection)
        Dim rs As SqlDataReader = comm.ExecuteReader
        Dim dt As DataTable = New DataTable
        dt.Load(rs)

        Call clCreateCSV.CreateCSVFile(dt, strFileNameDiario)
    End Using
    connection.Close()
End Using

.....

Public Shared Sub CreateCSVFile(dt As DataTable, strFilePath As String)
    Dim sw As New StreamWriter(strFilePath, False, Encoding.UTF8)
    Dim iColCount As Integer = dt.Columns.Count

    For Each dr As DataRow In dt.Rows
        For i As Integer = 0 To iColCount - 1
            If Not Convert.IsDBNull(dr(i)) Then
                sw.Write(dr(i).ToString())
            End If
            If i < iColCount - 1 Then
                sw.Write(";")
            End If
        Next
        sw.Write(sw.NewLine)
    Next
    sw.Close()
End Sub

我需要用另一个表中的字段填充选择(“”作为控制)上的第 4 个值,该字段连接到另一个中间表。

field3 加入 GFac.Gfac2 上的另一个表 Gfac 表加入 CCli.ccli1 上的第三个表 --> 这是我在查询中需要的表

可以只使用内部连接,但是,afaik 它只会获取验证连接的字段。

我该怎么做,写 ALL 来自 [2016cl] 的数据以及每个数据的字段控制(如果存在)?

提前致谢。如果您需要更多信息,请询问!

【问题讨论】:

  • 对我来说,这似乎是一个纯 sql 问题。那你为什么要展示所有的 VB 代码呢?展示您的表格以及它们之间的关系。显示一些示例数据和查询的预期结果。
  • 嗨@Tim Schmelter,感谢您抽出宝贵时间。我发布了所有代码,因为我不知道我是否应该采用 sql 方式并使查询更大,或者以编程方式执行它会更好。
  • 当然用 sql 会更高效,但我们提供的信息太少,无法帮助您

标签: sql vb.net


【解决方案1】:

使用 LEFT JOIN 代替 INNER JOIN。

例如: SELECT * FROM TABLE1 LEFT JOIN TABLE2 ON ...

该查询从 TABLE1 中选择所有行。如果 TABLE1 中的一行在 TABLE2 中没有匹配记录,则 TABLE2 字段包含 NULL。

希望对您有所帮助。

【讨论】:

    猜你喜欢
    • 2023-01-14
    • 1970-01-01
    • 2022-12-01
    • 2022-12-02
    • 2022-12-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    相关资源
    最近更新 更多