首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ruby2.7中显示Sqlite3视图的问题

在ruby2.7中显示Sqlite3视图的问题
EN

Stack Overflow用户
提问于 2020-05-01 16:03:29
回答 1查看 73关注 0票数 1

我在显示使用ruby创建的视图(在sqlite3中成功创建)时遇到了问题。

下面是sqlite视图

代码语言:javascript
复制
CREATE VIEW members_ytd_totals AS
    SELECT id AS MemberID,
    first_name,
    last_name,
    ipu_dues.total AS TotalDues,
    ipu_levy.total AS TotalLevy,
    ipu_fines.total AS TotalFines,
    ipu_donation.total AS TotalDonations,
    ipu_registration.total AS TotalRegistrations

FROM ipu_profile
       INNER JOIN
       ipu_dues ON ipu_dues.id = ipu_profile.id
       INNER JOIN
       ipu_levy ON ipu_levy.id = ipu_profile.id
       INNER JOIN
       ipu_fines ON ipu_fines.id = ipu_profile.id
       INNER JOIN
       ipu_donation ON ipu_donation.id = ipu_profile.id
       INNER JOIN
       ipu_registration ON ipu_registration.id = ipu_profile.id;

通常,我应该能够在ruby中使用一个简单的select语句来显示以下视图

代码语言:javascript
复制
require 'sqlite3'
require 'sqlite_print_table'
db = SQLite3::Database.open 'database.db'
db.print_table("SELECT * FROM members_ytd_totals", guide_tolerance: 4, width_tolerance: 5, margin: 10)

然而,我得到一个数据库异常发生-模棱两可列名: id

但是在sqlite3内部,这个视图是正确创建的,没有错误,我可以在studio中看到这个视图。我只是不能用红宝石来展示。有什么好主意吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-01 16:10:31

当您说我可以在studio中看到视图时,您的意思是视图的创建没有任何错误。

但是你有没有试着用它,比如说:

代码语言:javascript
复制
SELECT * FROM members_ytd_totals;

你也会犯同样的错误。

使用别名,特别是在涉及多个联接的情况下,总是用表的名称/别名对列名进行限定,以避免歧义:

代码语言:javascript
复制
CREATE VIEW members_ytd_totals AS 
SELECT 
  p.id AS MemberID, p.first_name, p.last_name, 
  d.total AS TotalDues, l.total AS TotalLevy, 
  f.total AS TotalFines, n.total AS TotalDonations, 
  r.total AS TotalRegistrations 
FROM ipu_profile p
INNER JOIN ipu_dues d ON d.id = p.id 
INNER JOIN ipu_levy l ON l.id = p.id 
INNER JOIN ipu_fines f ON f.id = p.id 
INNER JOIN ipu_donation n ON n.id = p.id 
INNER JOIN ipu_registration r ON r.id = p.id;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61546133

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档