我有 2 个预填充的表链接到我的用户表,我该如何使用这些数据?

Posted

技术标签:

【中文标题】我有 2 个预填充的表链接到我的用户表,我该如何使用这些数据?【英文标题】:I have 2 prepopulated tables linked to my users table, how do I use that data? 【发布时间】:2018-03-16 00:54:42 【问题描述】:

我有一个用户表:'users' 列有 'user_id'、'username'、'password'、'state_code'、'city_id'

还有 2 个预填充的表格:

带有列的'states':'state_code'、'state'

'cities' 列:'city_id'、'city'、'state_code'、'zip'、'county'

我添加了一个用户并在 u.state_code 下放置了一个值“CA” 并做了以下测试

SELECT u.*, s.state, c.city
FROM users AS u
LEFT JOIN states AS s 
ON s.state_code - u.state_code 
LEFT JOIN cities AS c
ON c.state_code = s.state_code 
WHERE u.user_id = "4" 
AND u.state_code = "CA"
AND c.zip = "91343";

查询运行但返回一个空集,我想查询与该邮政编码对应的城市,我显然有一个与该邮政编码和州代码对应的数据,我还是相当新的,可以我不知道如何使用预先填充的表格,如果有人可以指出我正确的方向,我将不胜感激。

【问题讨论】:

【参考方案1】:

left join 中,除第一个表之外的所有条件都应放在on 子句中:

SELECT u.*, s.state, c.city
FROM users u LEFT JOIN
     states s 
     ON s.state_code - u.state_code LEFT JOIN
     cities c
     ON c.state_code = s.state_code AND c.zip = '91343'
WHERE u.user_id = 4  AND u.state_code = 'CA';

注意:对字符串和日期常量使用单引号。不要将它们用于数字。

【讨论】:

以上是关于我有 2 个预填充的表链接到我的用户表,我该如何使用这些数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何将链表链接到 C++ 中的静态数组?

将一张表链接到另一张表?

表格视图中的分组单元格在下一节标题之前具有半透明区域/填充。我该如何改变呢?

如何使窗口高度适应内容?

如何用两个查询填充一个 UITableView?

Vuetify v-data-table - 如何使其填充可用高度?