2017-11-30 8 views
0

は私ができる、そして、どのように私は、重複する結果MySQLはフィールドが繰り返されている場合

SELECT meta_id, post_id, DISTINCT meta_value FROM wp_postmeta WHERE post_id='69' AND meta_value LIKE '%iframe%' 

を返すからMySQLを防ぐかもしそうなら、私はちょうど1行を取得したいので、もしあれば、さらに項目を無視し、重複行を防ぎますmeta_valueが重複しました。

DISTINCTをどこに配置しても結果は返されませんが、削除した場合はクエリが期待どおりに機能するので、間違いなくそこに置くのは間違いです!

+1

SELECT meta_id、post_idの、wp_postmeta FROM post_idのは= '69' meta_valueを使用することができるようにMySQLでLIMITを使用することができますAND meta_value LIKE '%iframe%' GROUP BY meta_value – laiju

答えて

1

一つだけの結果をしたい場合は、

SELECT meta_id, post_id, DISTINCT meta_value 
FROM wp_postmeta 
WHERE post_id='69' 
AND meta_value LIKE '%iframe%' 
LIMIT 1 

またはSQLであなたが

SELECT TOP 1 meta_id, post_id, DISTINCT meta_value 
FROM wp_postmeta 
WHERE post_id='69' 
AND meta_value LIKE '%iframe%' 
+0

良いアイデアだが、ユニークなセットを返すには、meta_valueが何らかの理由で重複しているようだ! – user3633383

+0

それから、前のコメントの@laijuで提案されているように、GROUP BYのmeta_valueを使うことができると思います。 –

関連する問題