简体   繁体   中英

postgresql empty array

I have the following table in PostgreSQL:

   Column    |          Type          |                         Modifiers
-------------+------------------------+-----------------------------------------------------------
 description | text                   | not null
 sec_r       | integer[]              |

My two array of integers sec_r have some fields that have "null" values, but I guess it isn't null?

Whenever I try to select * from this table where sec_r = null I get 0 rows.

|  description     |  sec_r  |
+------------------+---------+
| foo bar foo bar  |         |
| foo bar foo bar  | {1,2,3} |
| foo bar foo bar  |         |
| foo bar foo bar  | {9,5,1} |
(4 rows)

Doing select * from TheTable where 1 = ANY (sec_r) returns the correct rows however.

How do I select the rows where the array is blank?

You should use IS NULL and not = NULL in SQL.

Try:

SELECT * FROM the_table WHERE sec_r IS NULL

you are looking for IS NULL.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM