Closed
Description
代码:
var list = freeSql.Queryable<Music>()
.ToList((a) => new
{
a.Id,
a.Name,
Tags = string.Join(",", freeSql.Select<Tag>().Where(b => a.Id == b.MusicId).ToList(b => b.Name))
});
public class Music
{
[Column(IsIdentity = true)]
public int Id { get; set; }
public string Name { get; set; }
}
public class Tag
{
[Column(IsIdentity = true)]
public int Id { get; set; }
public int MusicId { get; set; }
public string Name { get; set; }
}
SQL 脚本:
-- SQLite
SELECT a.Id, a.Name, (SELECT GROUP_CONCAT(b.Name) FROM Tag b where a.Id = b.MusicId) FROM Music a;
其他数据库的实现:
- PostgreSQL:https://blog.csdn.net/qq_16605855/article/details/79430491
- MySQL:https://blog.csdn.net/zhangbingtao2011/article/details/81737925
- SQLite3:https://blog.csdn.net/qhexin/article/details/51036541
- SQL Server:https://www.cnblogs.com/longphui/p/4914157.html
- Oracle:https://www.cnblogs.com/wanggang-java/p/10916191.html
Metadata
Metadata
Assignees
Labels
No labels