sql - Postgres operator logic not working? -


can't life of me figure out why im getting row back

 order_id | job_name | memname |     status     |  state ----------+----------+---------+----------------+----------  0e4ba    | pwd_test |         | wait condition | deleted 

running query

select order_id, job_name, memname, status, state  a150708002_ajob  order_time < '20150601'    , status != 'ended ok'     or state != 'deleted'    , order_time < '20150601'; 

total result:

em800=> select order_id, job_name, memname, status, state a150708002_ajob order_time < '20150601' , status != 'ended ok' or state != 'deleted' , order_time < '20150601';  order_id | job_name | memname |     status     |  state ----------+----------+---------+----------------+----------  0e4ba    | pwd_test |         | wait condition | deleted  0eevd    | dbpe220a |         | wait condition | held  0eeve    | shaw     |         | wait condition | held 

not sure what's going on?

update:

tried below still no success

em800=> select order_id, job_name, memname, status, state a150708002_ajob order_time < '20150601' , not (status = 'ended ok' or state = 'deleted');  order_id | job_name | memname |     status     |  state ----------+----------+---------+----------------+----------  0e4ba    | pwd_test |         | wait condition | deleted  0eevd    | dbpe220a |         | wait condition | held  0eeve    | shaw     |         | wait condition | held (3 rows) 

table schema:

                 table "public.a150701002_aevt"         column        |            type             | modifiers ----------------------+-----------------------------+-----------  evt_no               | integer                     | not null  evt_time             | timestamp without time zone | not null  evt_type             | character varying(1)        | not null  new_value            | integer                     |  old_value            | integer                     |  order_id             | character varying(5)        |  state_digits_new_ffu | character varying(15)       |  state_digits_old_ffu | character varying(15)       | indexes:     "pk_a150701002_aevt_0" primary key, btree (evt_no)  task_class               | character varying(3)    |  ind_cyclic               | character varying(1)    |  reten_days               | character varying(3)    |  reten_gen                | character varying(2)    |  order_table              | character varying(770)  |  order_lib                | character varying(44)   |  sticky_ind               | character varying(1)    |  seq_cnt_added            | integer                 |  short_ffu                | character varying(12)   |  dsect_ffu                | character varying(100)  |  isn_                     | integer                 | not null  time_ref                 | character varying(1)    |  time_zone                | character varying(9)    |  appl_type                | character varying(10)   |  appl_ver                 | character varying(10)   |  appl_form                | character varying(30)   |  cm_ver                   | character varying(10)   |  state_mask               | character varying(9)    |  multy_agent              | character varying(1)    |  schedule_env             | character varying(16)   |  sys_affinity             | character varying(5)    |  req_nje_node             | character varying(8)    |  adjust_cond              | character varying(1)    |  in_service               | character varying(255)  |  stat_cal                 | character varying(30)   |  stat_period              | character varying(1)    |  instream_jcl             | text                    |  use_instream_jcl         | character varying(1)    |  lpar                     | character varying(8)    |  due_out_daysoffset       | character varying(3)    |  from_daysoffset          | character varying(3)    |  to_daysoffset            | character varying(3)    |  order_time               | character varying(14)   |  avg_start_time           | character varying(6)    |  cpu_time                 | integer                 |  em_stat_cal_ctm          | character varying(20)   |  em_stat_cal              | character varying(30)   |  em_stat_period           | character varying(1)    |  interval_sequence        | character varying(4000) |  specific_times           | character varying(4000) |  tolerance                | integer                 |  cyclic_type              | character varying(1)    |  current_run              | integer                 |  elapsed_runtime          | integer                 |  workloads                | character varying(525)  |  def_nodegroup            | character varying(50)   |  nodegroup_set_by         | character varying(1)    |  failure_rc               | character varying(5)    |  failure_rc_step          | character varying(8)    |  failure_rc_procstep      | character varying(8)    |  highest_rc               | character varying(5)    |  highest_rc_step          | character varying(8)    |  highest_rc_procstep      | character varying(8)    |  highest_rc_memname       | character varying(8)    |  associated_rbc           | character varying(20)   |  cm_status                | character varying(32)   |  depend_service_in        | character varying(1)    |  depend_service_out       | character varying(1)    |  em_stat_detail_data      | character varying(1500) |  prev_odate_rerun_counter | integer                 |  jobrc                    | character varying(5)    | 

in response norbert van nobelen answer

em800=> select order_id, status, state a150712002_ajob order_time < '20150615' , (status != 'ended ok' or state != 'deleted') , order_time < '20150615';  order_id |     status     |  state ----------+----------------+----------  0eevd    | wait condition | deleted  0eeve    | wait condition | held (2 rows) 

answer:

turns out logic fine values inside cells had trailing white space

ctmtest1-tctmsv80 [13] python del_jobs_main.py 20150625 150712 select order_id, status, state a150712002_ajob order_time < '20150625' , not (status = 'ended ok' or state = 'deleted'); ' order_id |     status     |  state   ' '----------+----------------+----------' ' 0eeve    | wait condition | deleted ' ' 0eevd    | wait condition | deleted ' '(2 rows)' 

so added trailing white space character query. guys :)

missing brackets in state check:

select order_id, job_name, memname, status, state a150708002_ajob  order_time < '20150601' ,  (status != 'ended ok' or state != 'deleted') , order_time < '20150601'; 

the brackets determine how or evaluated.


Comments

Popular posts from this blog

toolbar - How to add link to user registration inside toobar in admin joomla 3 custom component -

linux - disk space limitation when creating war file -

How to provide Authorization & Authentication using Asp.net, C#? -