MySQL加入使用"包含"?

cod*_*ama 5 mysql join

我有这两个表:

Table: ORDERS
ID - NAME    - DATA
---------------------------------------------
1  - Order 1 - node_checkout_nid";i:141;s:10:
2  - Order 2 - node_checkout_nid";i:142;s:10:

Table: NODES
NID - Description
--------------------
141 - bla bla bla
142 - bla bla bla 2
Run Code Online (Sandbox Code Playgroud)

我需要一个可以在NID上连接两个表的SQL连接查询,请记住NID在"DATA"列中.

我需要以此结束:

Table: RESULT
ID - NAME    - DATA                             NID - Description
-----------------------------------------------------------------------------------
1  - Order 1 - node_checkout_nid";i:141;s:10: - 141 - bla bla bla
2  - Order 2 - node_checkout_nid";i:142;s:10: - 142 - bla bla bla 2
Run Code Online (Sandbox Code Playgroud)

我想使用"喜欢"加入,但我认为(如果可能的话)"包含"加入会更好吗?任何帮助将不胜感激!

Bor*_*rja 6

您可以使用:

SELECT ID, NAME, DATA, NID, Description
  FROM ORDERS INNER JOIN NODES ON DATA LIKE CONCAT('%;i:', NID, ';%')
Run Code Online (Sandbox Code Playgroud)

无论如何,这是一个沉重的问题.将NID作为纯文本放在数据字段中并不是一个好主意,在不同的列中更好.