[英]WHERE clause that includes an AND substring condition
直到我將此條件添加到WHERE子句中為止,下面顯示的php查詢仍能正常工作(在添加該查詢后,該查詢出現了空白結果):
AND SUBSTR(company_id,1)='1'
基本上,我只想包括company_id
最后一位為'1'的公司。 我怎樣才能做到這一點?
$data = mysqli_query($mysqli,"SELECT table1.company_abbrev, table2.company_name FROM table1, table2 WHERE table1.company_id=banks.company_id AND SUBSTR(company_id,1)='1' ORDER BY table2.company_name ");
試試這個
SUBSTR(company_id,-1)='1'
SUBSTRING(), the position of the first character in the string from which the
substring is to be extracted is reckoned as 1
有關更多詳細信息,請參見dev.mysql.com
當SUBSTR
的position參數為正數時,它從字符串的開頭開始計數。 當它為負數時,它將從末開始計數。 因此,您需要SUBSTR(company_id, -1)
。 您也可以使用RIGHT(company_id, 1)
。
SUBSTR(company_id,1)返回整個字符串(從索引1開始,這是第一個字符)
LIKE '%1'
要么
SUBSTRING(REVERSE(company_id), 1, 1)
嘗試這個
SUBSTRING('Sakila' FROM -1 FOR 1)='1'
“-”從最后一個字符開始計數。 “ For 1”表示您使用1個字符。
使用類似條款,將其代碼替換為SUBSTR(company_id,1),例如'%1'
如果compan_id是數字類型(例如整數),則對它進行數字計算會快得多。 使用模運算符可以隔離最后一位數字。
WHERE company_id % 10 == 1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.