我有一个存储过程,该过程检查模型兼容性并返回成功或失败消息。 例如,CPU和主板必须共享同一插槽。 所有条目的可能值:
cpu mb case mb
+-----+----+ +-----+---+ +-----------------+-------------------+ +-------+-----+
|cpu_socket| |mb_socket| | case_size | | mb_size |
| AM4 | | AM4 | |uATX/MicroATX,ATX,ExtendedATX,MiniITX| |uATX/MicroATX|
| 1151 | | 1151 | |uATX/MicroATX,MiniITX | | ATX |
+-----+----+ +----+----+ +-----------------+-------------------+ +-------+-----+
case_size和mb_size是枚举字段。
IF (cpu_socket=mb_socket) then ....
或IF (cpu_socket LIKE mb_socket) then ....
将用于检查套接字。
但是如何检查主板尺寸和机箱尺寸?如果我写:
IF (case_size = mb_size) then ....
或
IF (case_size LIKE '%mb_size%') then ....
它们都不起作用,因为当主板具有'ATX'值时,它将返回带有'uATX / MicroATX,MiniITX'值的机箱,因为它包含'uATX'。
如何检查此字段的兼容性?