[英]Sub-Query in Mysql: Join on two table with string concatenation
我对MySQL中的子查询有疑问。 问题是: -
有两张桌子
描述userfirst
id firstname
1 Anurag
2 Abhishek
3 Prashant
描述userlast
src lastname
F/1 Jain
F/2 Singh
F/3 Sharma
现在我想输出如下: -
id firstname lastname
1 Anurag Jain
2 Abhishek Singh
3 Prashant Sharma
我想只写一个查询: -
select
f.id,
f.firstname,
(select l.lastname from userlast l where l.src = 'F/'+f.id) as name
from userfirst f
以上查询是可能的,如果是/否请告诉正确的解决方案?
谢谢
尝试使用JOIN
更高效:
SELECT
f.id,
f.firstname,
l.lastname
FROM
userfirst f
LEFT JOIN userlast l
ON l.src = CONCAT('F/',f.id)
你可以在这里看到结果, Meherzad
提供的Meherzad
在mysql中有许多用于字符串操作的函数,包括你可以使用的concat
mysql> SELECT CONCAT('My', 'S', 'QL');
-> 'MySQL'
我想你可以使用select f.id,f.firstname,(从userlast l中选择l.lastname,其中l.src = concat('F /',f.id)作为userfirst f的名称
SELECT
f.id,
f.firstname,
l.lastname
FROM
userfirst f
INNER JOIN userlast l
ON l.src = CONCAT('F/',f.id)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.