MySQL sadece not null değerleri SEÇİN | Netgez.com
SORU
12 Mart 2011, CUMARTESÄ°


MySQL sadece not null değerleri SEÇİN

Sadece not NULL değerleri alır bir deyim yapmak mümkün.

Şimdi bu kullanıyorum:

SELECT * FROM table

Ve sonra bir php döngü ile null değerleri filtrelemek için var

orada bir ÅŸekilde yapmak

SELECT * (that are NOT NULL) FROM table?

Val1,val2,val3,null,val4,val5,null vb boş olsun * seçtiğimde şu an.... ama ben sadece benim sonuç null olmayan değerleri almak istiyorum. Olası bir döngü ile filtreleme olmadan bu?

Şimdi bir süre için arama oldum, cant çözün

CEVAP
12 Mart 2011, CUMARTESÄ°


IS NOT NULL kullanmalısınız. (Karşılaştırma = <> her iki ifadenin her iki tarafta NULL 11 *ver operatörleri.)

SELECT * 
FROM table 
WHERE YourColumn IS NOT NULL;

Sadece bütünlüğü için MySQL de null safe equality operator inkar söz edeceğim ama bu standart SQL değil.

SELECT *
FROM table 
WHERE NOT (YourColumn <=> NULL);

Düzenlenmiş yorumlara yansıtmak için. Masanız bu durumda yapısını değiştirmek Senin görevin daha kolay hale getirebilir ilk normal formda olmayabilir gibi geliyor. Ama bunu yapmanın başka yolları da birkaç...

SELECT val1 AS val
FROM  your_table
WHERE val1 IS NOT NULL
UNION ALL
SELECT val2 
FROM  your_table
WHERE val2 IS NOT NULL
/*And so on for all your columns*/

Yukarıdaki dezavantajı tablo birden çok kez, bir kez her sütun için tarar. Bu muhtemelen tarafından aşağıda kalmayabilir ama MySQL bu test etmedim.

SELECT CASE idx
         WHEN 1 THEN val1
         WHEN 2 THEN val2
       END AS val
FROM   your_table
        /*CROSS JOIN*/
       JOIN (SELECT 1 AS idx
                   UNION ALL
                   SELECT 2) t
HAVING val IS NOT NULL  /*Can reference alias in Having in MySQL*/

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • DRDAnimation

    DRDAnimation

    28 EYLÃœL 2012
  • Electro Posé

    Electro PosÃ

    21 ÅžUBAT 2013
  • THE RED DRAGON

    THE RED DRAG

    6 ÅžUBAT 2009