我有一張用於查找的表格,它將一個字段中的人類可讀值存儲在一個字段中,並且在另一個字段中刪除特殊字符和空格的相同文本。例如,值「Children's Shows」將作爲「兒童節目」出現在查閱列中。MySQL CONCAT'*'符號敬酒數據庫
不幸的是,相應的主表並不那麼簡單 - 由於歷史原因,我沒有創建自己,現在將難以撤消,查找值實際上是用周圍的星號存儲的,例如, '*兒童-節目*'。因此,當試圖加入帶有星號的主表的無星號查找表時,我想CONCAT會幫助我在即時添加它們,例如:
SELECT *
FROM main_table m
INNER JOIN lookup_table l
ON l.value = CONCAT('*',m.value,'*')
...然後表格是烤麪包。不知道我是否創建了一個無限循環或真的搞砸了數據,但它需要ISP備份才能讓表再次響應。我懷疑這是因爲'*'符號可能是保留的,就像通配符一樣,我已經要求數據庫做相當於舔自己的肘部。無論哪種方式,我都猶豫不決,試圖通過設法殺死數據庫的壯觀方式來找到答案。
在此先感謝任何能夠(a)告訴我上面實際對數據庫做了什麼的人,以及(b)我應該如何實際加入表格?
+1讓DB舔自己的手肘一個字。而且,因爲我很好奇這個問題可能是什麼。 –
'main_table'中有多少條記錄? –
我認爲你的加入應該在兩張桌子上都有一些共同的ID,請嘗試使用限制。 –