选择要在SQL视图的文本框中显示的特定值

本文关键字:显示 文本 SQL 视图 选择 | 更新日期: 2023-09-27 17:50:23

一般来说,我对编程还是个新手,所以我至少要用一千种方式来回答这个问题。我有我在SQL数据库中创建的一对表的视图。它们具有外键关系和一对一对多表。我有一个员工表和一个电话号码表,它们是链接的。

所有员工至少有1个数字,有些员工有2个或更多的数字列出,我希望能够选择几个数字显示在一个文本框,甚至在一对文本框。如果我用文本框。文本=雇员。PhoneNumber(亚音速)然后它只给我第一个号码。有人能给我指出一个指南或向我解释,我将如何选择哪一个所说的值,我想在该文本框中显示?

非常感谢你能给予的任何帮助。

注。当我在sql中测试视图时,由于不同的数字,我得到了多次列出的相同员工,所以我知道数据在那里,我只是不知道如何访问列表中的其他2个电话号码。

选择要在SQL视图的文本框中显示的特定值

我没有亚音速的经验,但它看起来很奇怪,你可以访问像这样的非标量值(员工到电话号码是一个1-n或m-n的关系,所以员工对象不应该有一个包含电话号码的标量字段,而是一个0或更多电话号码对象的集合),如果你的员工对象有一个标量电话号码对象,我建议检查关系

//编辑

所以你的VIEW包含这样的内容:

employee + phone  
John Doe | 123  
John Doe | 456  
Jane Doe | 789

假设结果是某种类型T的枚举,其中包含具有给定名称的值作为属性或字段…

所以你有

IEnumerable< T > data; // initialized somewhere else
IEnumerable< IGrouping<WhateverTypeEmployeeIs,T>> tmp = from x in data group x by x.employee;
var employees = from x in tmp select new { employee = x.Key, phoneNumbers = x.Select(y => y.phone).ToArray() };

employees将包含一个IEnumerable<>一个新的匿名类型,有两个属性:
雇员——包含你的雇员
phoneNumbers——包含一个电话号码数组