2016-04-14 24 views
0

boş alana sahip veritabanından kayıt alınıyor: Sadece bazı içeriğe sahip, bu sorgu kayıtları döndürmek gerekiyordu diğer kriterlerin arasındaBen bir veritabanından kayıtları almak için aşağıdaki kod satırlarını gelmiş

$dbh = new PDO("mysql:host=$hostname;dbname=$dbname; charset=utf8;", $username, $password); 
     $sql = $dbh->prepare("SELECT * FROM usa WHERE code = :code AND window1 = :oldrepeat AND spare <> :americinn AND url IS NOT NULL ORDER BY user ASC"); 
     $sql->execute(array(':code' => $code, ':oldrepeat' => $oldrepeat, ':americinn' =>$americinn)); 
     /*** fetch the results ***/ 
    $result = $sql->fetch(); 

alan url olarak adlandırıldı, ancak bu gerçekleşmiyor. Boş bir url alanına sahip kayıtları döndürüyor.

Temel olarak yanlış bir şey yapıyorum ama ne olduğunu göremiyorum.

Biraz ışık tutabilir mi lütfen?

SELECT * FROM usa WHERE code = :code AND window1 = :oldrepeat AND spare <> :americinn AND !ISNULL(url) ORDER BY user ASC 

ISNULL bir sütunun değeri null kontrol eden dahili MySQL fonksiyonudur:

En aşağıdaki şekilde sorgu yazmak, Eh

+4

'NULL'! = Boş btw. –

cevap

1

istemektedir. ! (olumsuzlama) kullanarak, yalnızca gerekli satırları alırsınız.

Bir sütunun boş değeri varsa, url!='''u deneyebilirsiniz.

İlgili konular