如何在sqlite中显示内部联接查询表的结果

本文关键字:查询表 结果 内部 显示 sqlite | 更新日期: 2023-09-27 17:57:56

所以,我在SQLite数据库中使用C#winrt。我想显示我已"加入"的查询结果。

我有两张桌子,分别是"学生"answers"课程"。

学生有:id(PK),姓名,课程id

课程有:课程ID(PK),课程名称

这是我的代码:

        var query1 = conn.QueryAsync<Student>("select * from Student s inner Join Course c on s.courseid  = c.courseid");
        var query2 = conn.QueryAsync<Course>("select * from Course c inner join Student s on c.courseid = s.courseid");
        var result1 = await query1;
        var result2 = await query2;
        lstJoin.Items.Clear();
        foreach (var item in result1)
        {
            string text = "Name: " + item.name + ", Course Id: " + item.courseid + ", Course Name : " + item.coursename;
            lstJoin.Items.Add(text);
        }

但是"item.coursename"是错误的,所以我无法显示它。然后,如果我将foreach中的result1更改为结果2,"item.name"将是错误的。我应该怎么做才能同时显示它们?非常感谢。

如何在sqlite中显示内部联接查询表的结果

为什么不用经典的方式来做呢?类似于带有命令文本的SQLiteCommand对象:

    strCommandText = "SELECT tbl1.*,tbl2.* FROM Table1 tbl1 INNER JOIN Table2 tbl2 ON tbl1.ID = tbl2.ID";

或者它是一个规范,你需要这样使用它??因为我在使用SQLite Helper文件时也遇到了同样的问题。