c# - 使用来自两个数据库的自动增量ID连接来自两个表的数据

标签 c# asp.net mysql sql tsql

我想连接来自两个数据库的表中的数据。一个使用预定义值(itemId、itemName)归档,另一个由用户填充(itemId、itemName、userId)。属性 itemId 和 itemName 是相同的,我们从第一个表中选择所有数据,从第二个表中我们按 userId 选择数据并将这两个结果结合起来。

加入的数据应该被区分,因为 ids 是自动递增的并且可以是相同的(加倍)。我们想用这个数据填充下拉列表,例如数据源和字典(int 是 itemId,string 是 itemName)我们只能在 dropDownList 中有 valueFiled 和 valueText 但这两个表的 id 可以是相同的,所以我们不这样做`从哪个表中不知道是通过 id 选择的项目。

是否有任何优雅的方式来连接它,也许是使用临时表,我们总是在用户登录时将这两个表连接到临时表等...

谢谢你的回答

最佳答案

我认为您正在寻找工会。使用文字值来标识来源。

select 'predefined' as source, itemid, itemname
  from predefined_values_table
union all
select 'user', itemid, itemname
  from user_supplied_values_table
  where userid = ?;

如果您只能容纳两列,您也许可以使用类似这样的东西。但是您必须取消字符串连接才能获得 ID 号。

select 'p:' || itemid, itemname
  from predefined_values_table
union all
select 'u:' || itemid, itemname
  from user_supplied_values_table
  where userid = ?;

关于c# - 使用来自两个数据库的自动增量ID连接来自两个表的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10737538/

相关文章:

jquery - Bootstrap 下拉菜单问题 ASP.Net VB

php - 在 SQL 查询中计算时间

mysql - 每个用户 ID 的唯一产品 ID 的更新率

c# - 如何托管 Web 服务以便连接到同一网络的其他客户端可以访问

c# - asp.NET LINQ 从数据库中删除

c# - Linq-to-SQL 选择多列

mysql - mysql中4个独立表的SUM相加

c# - 加扰 XML 中的文本元素

c# - Action 链接 CS1026 : ) expected

c# - 创建包含 GUI 组件 Windows Phone 8 的 .dll 库