首页 \ 问答 \ SQL JOIN来自不同表的行具有相同的值(SQL JOIN row from different table with the same values)

SQL JOIN来自不同表的行具有相同的值(SQL JOIN row from different table with the same values)

所以我有这张桌子

  code  |  name
  -----------------
  1     |  abc
  2     |  asd
  3     |  aws

然后我有这个新表用于交易使用

  code  | new_code
  ---------------------
  1     | 2
  2     | 3

我想得到如下视图:

  code  |  name  |  new_code  |  name  |
  ---------------------------------------
  1     | abc    |  2         |  asd   |
  2     | asd    |  3         |  aws   |

我应该为这个视图使用什么样的查询。 谢谢


so i have this table

  code  |  name
  -----------------
  1     |  abc
  2     |  asd
  3     |  aws

and then i have this new table for transactional use

  code  | new_code
  ---------------------
  1     | 2
  2     | 3

i want to get the view like this below:

  code  |  name  |  new_code  |  name  |
  ---------------------------------------
  1     | abc    |  2         |  asd   |
  2     | asd    |  3         |  aws   |

what kind of query i should use for this view. Thanks


原文:https://stackoverflow.com/questions/36299402
更新时间:2024-05-24 19:05

最满意答案

问题是您总是将所有数据附加到同一个文件中...因此上一次运行的所有内容都是重复的。

一种解决方案是在使用当前方法保存数据之前删除(取消链接)文件。

然而,正如Freezerburn先前指出的那样,不打开和关闭每个项目的文件更经济。 只需在覆盖模式下打开文件一次(即不附加),然后写入所有数据,然后关闭文件。 也应该快得多。

另一个问题是您以二进制格式保存数据。 尝试定义易于阅读的文本格式。 这会使问题变得明显......


The problem is that you are always appending all the data to the same file ... so everything from the previous run is duplicated.

One solution would be to delete (unlink) the file before saving the data with your current approach.

However, as Freezerburn pointed out earlier, it's more economic to not open and close the file for each item. Just open the file once in overwrite mode (i.e. not append), then write all the data, then close the file. Should be much faster, too.

Another problem is that you save your data in binary format. Try to define an easy to read textual format. That would have made the problem obvious ...

相关问答

更多
  • 维基百科产生 完整的二叉树(有时是正确的二叉树或2树或严格二进制树)是一棵树,除了叶子之外的每个节点都有两个孩子。 所以你没有只有1个孩子的节点。 看起来和严格的二叉树一样。 这是一个完整/严格的二叉树的图像,从谷歌: 一个完整的二进制树是一个二进制树,其中每个级别,除了最后一个,完全被填满,所有节点都尽可能地最左边。 这似乎意味着一棵平衡的树。 这是一个完整的二叉树的图像,从谷歌,全树部分的图像是奖金。 Wikipedia yielded A full binary tree (sometimes pro ...
  • 问题是您总是将所有数据附加到同一个文件中...因此上一次运行的所有内容都是重复的。 一种解决方案是在使用当前方法保存数据之前删除(取消链接)文件。 然而,正如Freezerburn先前指出的那样,不打开和关闭每个项目的文件更经济。 只需在覆盖模式下打开文件一次(即不附加),然后写入所有数据,然后关闭文件。 也应该快得多。 另一个问题是您以二进制格式保存数据。 尝试定义易于阅读的文本格式。 这会使问题变得明显...... The problem is that you are always appending ...
  • 我认为问题在于你没有设置左右指针的值。 您正在传递指针的值。 您需要将指针传递给指针(左侧和右侧),以设置结构中的值。 另一种方法是使用引用而不是指针。 以下是我为您提供的代码提出的修改: 将对node参数的调用更改为build_tree是指向指针的指针。 相应地更改了值的赋值。 更改了对build_tree的调用以传递左右地址(以获取指向指针的指针)。 删除赋值/条件以设置root_node。 因此,当您调用build_tree时,您需要传入root的地址。 这将像后面的所有节点一样设置节点,因此不需要特 ...
  • 只是通过阅读你的问题来澄清; 您正尝试通过将新位置附加到该业务节点的链接列表来修改BT中的现有业务(节点)。 我认为,对于每个业务节点,您很可能会有一个指向链表开头的指针。 从这里,您可以遍历列表并添加新的位置节点。 如果是这种情况,那么你的陈述; temp->head = addLoc(root->head,newLoc); 尝试传递BT的root的head指针而不是该业务节点内的链表的head指针。 相反,它应该是; LocationNode * new_location = addLoc (temp- ...
  • 你可以递归地存储它: void encodeState(OutputStream out,Node n) { if(n==null) { out.write("[null]"); } else { out.write("{"); out.write(n.nodeDetails()); encodeState(out, n.yesNode()); encodeSta ...
  • 请在LeetCode上查看 。 我喜欢这个解决方案,因为它相对高效并且生成光输出文件。 假设你有一棵这样的树: _30_ / \ 10 20 / / \ 50 45 35 此解决方案允许您将其序列化为此类输出文本文件: 30 10 50 # # # 20 45 # # 35 # # 要做到这一点,它足以通过树执行简单的预订遍历: void writeBinaryTree(BinaryTree *p, ostream &out) { if ...
  • 您只需要将struct TreeNode的结构更改为this :: struct TreeNode { char value; // to store the char value of string int count; // number of times the character has occured TreeNode *left; TreeNode *right; }; 从您的代码中可以看出打算使用BST(如果节点的值小于根值,则向左移动,反之亦然,如果值更多 ...
  • 问题在于这个循环: for (unsigned int j = 0; j < filedata.size()-1; j++) 。 这并不能保证所有插入的元素都具有i的大小。 如果用for (unsigned int j = 0; j < filedata.size()-i+1; j++)替换它for (unsigned int j = 0; j < filedata.size()-i+1; j++) ,那么j将上升到长度为i的字符串的最后一个索引,这就是你正在寻找的对于。 The issue is with ...

相关文章

更多

最新问答

更多
  • 谁有JAVA的视频教程啊 最好从基础开始到精通 打包好的
  • 仅根据表格的一列删除重复的值(Remove duplicate values based on only one column of the table)
  • 从数据库值填充数组的最有效方法?(Most efficient way to populate array from database values?)
  • 我在data属性中有一个变量,并从prop传递相同的变量。(I have one variable in data attribute, and pass the same variable from prop. why the {{}} template display the value from prop rather than data)
  • Reg Ex Django Url Conf(Reg Ex Django Url Conf)
  • 本地化不适用于主要活动(Localization does not work on main activity)
  • 我有一个同学让我去福州科闽计算机学校学习室内设计,这个学校好吗?
  • 变量的模板参数中的Decltype(Decltype in template parameter of variable)
  • 代码签名错误与Xcode 4.2(Code Sign error with Xcode 4.2)
  • 在保留表达式生命周期的同时强制执行参数评估顺序(Enforce parameter evaluation order while retaining lifetime of of expressions)
  • 查询以获取早于开始日期的日期行(不是简单的WHERE)(Query to get date rows older than a start date (not a simple WHERE))
  • 武清哪家会计培训机构通过率高?
  • Java正则表达式逻辑OR(Java regex logical OR)
  • 使用for循环创建异步Vue组件(Use for loop to create async Vue component)
  • 从magento数据库获取客户名称和电子邮件(Get customer names and emails from magento database)
  • 运行Ruby冒泡排序(Running Through a Ruby Bubble Sort)
  • 减去返回多于1行的两个SQL子查询的结果(Subtracting the results of the two SQL subqueries that returns more than 1 row)
  • 对于Ruby http请求,响应“呃?”是间歇性的(The response “er ?” is getting intermittently for Ruby http request)
  • 请问嘉定区有没有培训上海市电脑中级的,有的话在哪里?
  • 根据日期范围查询最小分区键(聚类键)(Query min partition key based on date range (clustering key))
  • int listinsert(sqlist * & L)中的&是什么意思
  • 原始套接字的会话管理(Session Management on Raw Socket)
  • 将Type用作“属性”是不好的做法?(Is it bad practise to use Type as a 'Property'?)
  • 电脑等级证书二级和三级有什么区别啊 !!我们学校有二级和三级培训到底该选着那个呢????????
  • linux 安装新硬盘如何设置权限
  • 无法从RecyclerView的onBindViewHolder更改根视图的大小或位置(Cannot change root view's size or position from RecyclerView's onBindViewHolder)
  • spin.js没出现在我的网站上?(spin.js is not showing up on my site?)
  • Gulp + Bootstrap字体(Gulp + Bootstrap Fonts)
  • 如何使用短信Alfresco.util.PopupManager.displayPrompt显示图标(How to show icon with text message Alfresco.util.PopupManager.displayPrompt)
  • Skype.getAllChats()未检测到基于云的群组聊天(Skype.getAllChats() not detecting cloud-based group chats)