How to use alias in where where in mysql

Is there any other way to make this request:

SELECT CONCAT_WS(" ", strLname, strFname, strMname) AS lessor_name FROM tbl_lessor WHERE lessor = '$lessor_name' 

I tried, but got an error that an unknown column says in mysql

+4
source share
4 answers

This may be due to lessor instead of lessor_name in where where. So try below:

 SELECT CONCAT_WS(" ", strLname, strFname, strMname) AS lessor_name FROM tbl_lessor having lessor_name= '$lessor_name' 
+9
source

In MySQL, you cannot use an alias near WHERE .

+4
source

maybe this will work:

 SELECT CONCAT_WS(" ", strLname, strFname, strMname) AS lessor_name FROM tbl_lessor WHERE CONCAT_WS(" ", strLname, strFname, strMname) = '$lessor_name' 
+2
source

This will work.

 SELECT * FROM (SELECT CONCAT_WS(" ", strLname, strFname, strMname) AS lessor_name FROM tbl_lessor) AS t1 WHERE lessor_name = '$lessor_name' 
0
source

Source: https://habr.com/ru/post/1388796/


All Articles