MySQL JOIN返回NULL字段 [英] MySQL JOIN returns NULL fields
本文介绍了MySQL JOIN返回NULL字段的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试在下面运行脚本,但名称字段始终为NULL值.
I'm trying to run script below, but always getting NULL values for name field.
SELECT u.name AS _user_name, s.name AS _school_name
FROM fwg_files AS f
LEFT JOIN users AS u ON u.id = f.user_id
LEFT JOIN user_profiles AS up ON up.user_id = u.id
LEFT JOIN school AS s ON s.id = up.profile_value
在我看来,JOIN ON学校表中的问题是,我尝试选择s.id,它也返回NULL值.
The problem seems to me in JOIN ON school table, I tried to SELECT s.id and it returns NULL values also.
表fwg_files
Table fwg_files
id | user_id
240 | 414
241 | 436
表格用户
id | name
414 | Name 1
436 | Name 2
表user_profiles
Table user_profiles
user_id | profile_value
414 | "6"
436 | "14"
餐桌学校
id | name
6 | School 1
14 | School 2
谢谢
推荐答案
不确定数据和架构,但是如果up.profile_value类似于"123",则可以尝试以下方法:
Not sure about your data and the Schema, but if up.profile_value is like "123", you can try this:
SELECT u.name AS _user_name, s.name AS _school_name
FROM fwg_files AS f
LEFT JOIN users AS u ON u.id = f.user_id
LEFT JOIN user_profiles AS up ON up.user_id = u.id
LEFT JOIN school AS s ON CONCAT('"', s.id, '"') = up.profile_value
这篇关于MySQL JOIN返回NULL字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文