I want to combine the results of several tables into one result using MySQl

I want to combine the result of several tables in one result using a column using MySql (see the result), but I am confused about this, if you have any query or optimize the way regarding this, please answer me or the help is definitely appreciated and I myself tried this request with Union , but seriously did not succeed (see example)

Result required

post  post_comment_likes  post_comments  post_likes
2     0                   3              0

Inquiry

SELECT COUNT(*) AS `post` FROM post WHERE user_id = "123456" UNION
SELECT COUNT(*) AS `post_comment_likes` FROM post_comment_likes WHERE user_id = "123456" UNION 
SELECT COUNT(*) AS `post_comments` FROM post_comments WHERE user_id = "123456" UNION
SELECT COUNT(*) AS `post_likes` FROM post_likes WHERE user_id = "123456" 
+3
source share
3 answers
set @post = 0;
set @post_comment_likes = 0;
set @post_comments = 0;
Set @post_likes = 0;


 select count(*) into @post from .......;
 select count(*) into @post_comment_likes from ......;
 select count(*) into @post_comments from ......;
 select count(*) into @post_likes from ......;

select (@post + @post_comment_likes + @post_comments + @post_likes) ;

@post, @post_comment_likes, @post_comments, @post_likes , '@'
, .

+1
SELECT (SELECT COUNT(*) 
          FROM post 
         WHERE user_id = "123456") AS `post`
      ,(SELECT COUNT(*) 
          FROM post_comment_likes
         WHERE user_id = "123456") AS `post_comment_likes`
      ,(SELECT COUNT(*)
          FROM post_comments
         WHERE user_id = "123456") AS `post_comments`
      ,(SELECT COUNT(*)
          FROM post_likes
         WHERE user_id = "123456") AS `post_likes`

COUNT(*) COUNT(<some fieldname>) .

0

Try the mysql query below

SELECT
(SELECT COUNT(*) AS `post` FROM post WHERE user_id = "123456" ) AS post , 
(SELECT COUNT(*) AS `post_comment_likes` FROM post_comment_likes WHERE user_id ="123456") AS post_comment_likes,
(SELECT COUNT(*) AS `post_comments` FROM post_comments WHERE user_id = "123456") AS post_comments , 
(SELECT COUNT(*) AS `post_likes` FROM post_likes WHERE user_id = "123456" ) AS post_likes

thank

0
source

All Articles