我有3个表,3个字段都一样。我基本上想从每个表中选择信息
例如:
userid = 1
我想从所有 3 个表中选择数据,其中userid = 1
我目前正在使用:
SELECT r.*,
p.*,
l.*
FROM random r
LEFT JOIN pandom p ON r.userid = p.userid
LEFT JOIN landom l ON l.userid = r.userid
WHERE r.userid = '1'
LIMIT 0, 30
但这似乎不起作用。
3个字段都一样
所以你的意思是你想要the same 3 fields
来自所有 3 个表?
SELECT r.col1, r.col2, r.col3
FROM random r
WHERE r.userid = '1'
LIMIT 0, 30
UNION ALL
SELECT p.pcol1, p.pcol_2, p.p3
FROM pandom p
WHERE p.userid = '1'
LIMIT 0, 30
UNION ALL
SELECT l.l1, l.l2, l.l3
FROM landom l
WHERE l.userid = '1'
LIMIT 0, 30
这些字段不必命名相同,但相同的类型需要排列在位置 1、2 和 3。
限制的工作方式是:
- 它将尝试从以下位置获取 30
random
.
- 如果已经有 30 个,它甚至不会查看其他 2 个表
- 如果少于 30 个
random
,它将尝试填充最多 30 个pandom
直到最后landom
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)