如果只用sql语句是可以行的吗?
select * from table where substring_index(field, ',', 1) = '10' 最初のカンマより前の部分を切り取ります
あなたの質問がよくわかりません。私の理解では、単純に select * from test where id = 10 というわけではありません。
あいまい一致を使用します: select * from test where columns like "%10%"追記: このような要求は少し奇妙に感じます。データベース設計に無理があるのでしょうか?
select * from test where columns like "%10%"
質問の観点から見ると、解決策はフィールドをセグメント化して判断するために使用されるカスタム関数です。1. クエリ ステートメントを追加します。 select * from table where 1=hasTen(column)
大まかな妥協案'10,%' のような列があるテーブルから * を選択||'%,10,%' のような列があるテーブルから * を選択|| >select * from table where columns like '%,10'
フィールドが a と b の形式でなければならないことが確認できれば、解決が簡単になる可能性があります。
参考: select * from test where concat(',', column, ',') like "%,10,%"
select * from test where concat(',', column, ',') like "%,10,%"
あなたの質問がよくわかりません。私の理解では、単純に select * from test where id = 10 というわけではありません。
あいまい一致を使用します:
select * from test where columns like "%10%"
追記: このような要求は少し奇妙に感じます。データベース設計に無理があるのでしょうか?
質問の観点から見ると、解決策は
フィールドをセグメント化して判断するために使用されるカスタム関数です。
1. クエリ ステートメントを追加します。
select * from table where 1=hasTen(column)
大まかな妥協案
'10,%' のような列があるテーブルから * を選択
||
'%,10,%' のような列があるテーブルから * を選択
|| >select * from table where columns like '%,10'
フィールドが a と b の形式でなければならないことが確認できれば、解決が簡単になる可能性があります。
参考:
select * from test where concat(',', column, ',') like "%,10,%"