I'm looking to take a specified string and query a table where a concat of 2 fields is equal to the string.
set @fab = "36013-601301-11";
set @job = substring_index(@fab, '-', 1);
set @fabnumba = trim(leading LEFT(@fab,char_length(@job)+1) from @fab);
select * from (select JobNumber, concat(JobNumber, '-', LotNumber) as bomfab from qiw_powerbi) base
where bomfab LIKE concat(@job,"-", @fabnumba)
If I try the following it fails:
WHERE bombfab LIKE "36013-601301-11"
However, this attempt works:
WHERE bombfab LIKE "36013-%601301-11"
How can I concat() with the variables @job and @fabnumba to do this?
CONCAT() function in MySQL is used to concatenating the given arguments. It may have one or more arguments. If all arguments are nonbinary strings, the result is a nonbinary string. If the arguments include any binary strings, the result is a binary string.
MySQL CONCAT() Function The CONCAT() function adds two or more expressions together. Note: Also look at the CONCAT_WS() function.
Are you sure that the LotNumber
values from qiw_powerbi
are what you are expecting? They don't have any leading spaces?
What happens if you try adding a TRIM function to LotNumber:
select * from (select JobNumber, concat(JobNumber, '-', TRIM(LotNumber)) as bomfab from qiw_powerbi) base
where bomfab LIKE concat(@job,"-", @fabnumba)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With