I'm not too sure how to describe my SQL Insert statement so I will describe the expected result.
I'm building a data extract list and have a table that I've put all my data into. It's called _MATTER_LIST
What I am trying to Achieve is to have the Client_Number + Col1 combination repeat after every unique COL1+COL2+COL3 combination but not duplicate when there is already a CLIENT_NUMBER+COL1. So the end result would be:
thanks in advance for any tips.
Simple ORDER BY should work for you if i understand. Try this :
select Client_Number, Col1, Col2, Col3 from _MATTER_LIST
order by Client_Number, Col1
I've managed to fix my own issue. I added a unique key for the col1 + col2 + col3 , then make col2 repeat over each combination for example.
The result is: select * from _MATTER_LIST order by COL4, COL5
Related
I need to do some comparison through 3 columns containing string dates 'yyyy-mm-dd', in Hive SQL. Please take in consideration that the table has more than 2 million records.
Consider three columns (col1; col2; col3) from table T1, I must guarantee that:
col1 = col2, and both, or at least one is different from col3.
My best regards,
Logically you have an issue.
col1 = col2
Therefore if col1 != col3 then col2 != col3;
There for it's really enough to use:
select * from T1 where col1 = col2 and col1 != col3;
It is appropriate to do this map side so using a where criteria is likely good enough.
If you wanted to say 2 out of the 3 need to match you could use group by with having to reduce comparisons.
I am working with some SQL queries on DB2. Is it possible to select all the columns in a table and also specify certain conditions using the "as" keyword within that select statement? For example, is this query possible:
select
*,
col1 + col2 as sum1,
col3 - col4 as dif1
from
table;
Whenever I attempt this, I am getting the SQL0104 error and it is saying "Token , was not valid. Valid tokens: FROM INTO".
Thank you for your help.
EDIT:
This query is running inside an SQLRPGLE program on an AS400.
Put your table alias in front of the *. So:
select
t.*,
col1 + col2 as sum1,
col3 - col4 as dif1
from
table t;
can anyone help me in the below query.
I wanted to find the records which have "word1" in col1 and we can write the below query for that but do we have any other option/operator that we can find the exact word in the col1 without prefix and postfix.
Select col1, col2 from table1
where col1 like '%word1%'
or col1 like '%word1'
or col1 like 'word1%'
or col1 = 'word1';
Note: I know that we can use contains operator but it uses the index which i don't want.
Please let me know is there any other way to represent above quer in a simple manner.
you want something like like .. but why?
If it is for a learning, you can use INSTR()
Select col1, col2 from table1
where INSTR(col1,'word1') > 0
Otherwise best approach is
Select col1, col2 from table1
where col1 like '%word%'
I would like to write a query
Select col1, col2
from table
where col1 = 'blah' or 'blah2' or 'blah3'
and col2 = 'blah' or 'blah2' or 'blah3'
I am used to writing them like this for a SINGLE option
select
col1, col2
from
table
where
col1 = :col1 and col2 = :col2
Parameters.AddWithValue(":col1", 'blah')
Parameters.AddWithValue(":col2", 'blah')
Now I want to add several options with OR between them and obviously the above code wont work. The SQL is for SQLite. Can anyone suggest how I could do this? I may potential have more then 3 different values for each parameter. I have tried searching but the answer is elusive.
You still have to use complete expressions, i.e., you need to write col1 = or col2 = every time.
Alternative, use IN:
SELECT ... WHERE col1 IN (:c11, :c12, :c13) AND col2 IN (:c21, :c22, :c23);
I have a query
SELECT col1, Val(col2)
FROM table1;
where col2 is a text data type.
I want to use DISTINCT here,
SELECT DISTINCT col1, Val(col2)
FROM table1;
but when I add it, I have an error
"Data type mismatch in criteria expression".
I have the same error when I try to sort the column2 (for the first query). Why?
The Val function doesn't process NULL values. Change your second column to Val(nz(col2,""))
I'm answering my question.
Because some of the rows have NULL value in col2 and SQL cannot compare two NULLs to find distinct rows, one should add WHERE col2 IS NOT NULL.
SELECT DISTINCT col1, Val(col2)
FROM table1
WHERE col2 IS NOT NULL;