2012-02-26 11 views
1

これは私のクエリこれは、0行を返すphpMyAdminには、SQLクエリの0行を返す

SELECT * from status_votes where vote = 'like' and status_id = 1 and item_poster = 'LUcase'

ですが、私は、テーブルを表示するときに phpmyadmin displaying the row

せて頂き、私のクエリに一致する行があります私が間違っているつもりですどこ知っている...

+0

... ..それはあなたの問題を解決しなければならない答える... –

+0

チェックアブヘイをテーブル構造を提供してください、あなたはphpmyadminのから?またはあなたのPHPスクリプトからそれをしようとしている? –

答えて

3

私の前提は、おそらく、データにphpMyAdminの値を見ることができない先行または後続のスペースがあることです。 phpMyAdminでレコードを編集し、実際にスペースが含まれているかどうか確認してください。

このクエリを実行してみてください。

SELECT * 
FROM status_votes 
WHERE TRIM(vote) = 'like' 
AND status_id = 1 
AND TRIM(item_poster) = 'LUcase'; 

問題が解決しない場合は、あなたのテーブル構造を共有してくださいすることができますか?

+0

レコードを編集しましたが、フィールドにはLUcase showsが表示されます Wこんにちはこれは? –

+0

@マーシャルマシューズ、私は実際には、これについて確かにコメントすることはできません。データがフィールドに挿入されている場所によって異なります。しかし、私の推測では、item_posterにはphpMyAdminが正しくレンダリングできない特殊文字がいくつか含まれています。可能であれば、MySQLコマンドラインクライアントでselectクエリを実行してみてください。 – Abhay

+0

ok imはmcryptを使用して2ウェイ暗号化を行い、それは奇妙な文字を引き起こします.. 2ウェイ暗号化のためのより良い方法です –

0

は、次のクエリを試してみてください。

SELECT * FROM `status_votes` 
WHERE `vote` = 'like' 
    AND `status_id` = '1' 
    AND `item_poster` = 'LUcase' 
+0

戻り0行:( –

+0

を – SolidSnake

+0

phpMyAdminのを、私はコメントのように他の答えで where句のitem_posterを持たないものは行を返します:(STUPID MYSQL –

3

WHERE句が問題を引き起こしているかを確認するためにあなたのクエリを減らしてみてください:

することは時にこれらの一行をお試しください:

SELECT * from status_votes where vote = 'like' and status_id = 1 and item_poster = 'LUcase' 
SELECT * from status_votes where vote = 'like' and status_id = 1 and item_poster = 'Lucase' 
SELECT * from status_votes where vote = 'like' and item_poster = 'LUcase' 
SELECT * from status_votes where status_id = 1 and item_poster = 'LUcase' 
SELECT * from status_votes where vote = 'like' 
SELECT * from status_votes where status_id = 1 
SELECT * from status_votes where item_poster = 'LUcase' 
SELECT * from status_votes 

問題を特定するために難しいことではありません...

+0

item_posterを使ったクエリは0行を返す、これは奇妙です。 –

+1

だから、item_posterが問題です。周囲に空白があるかどうかを調べてください。 '%LUcase%'のようにitem_posterを試してください。 –

関連する問題