Create union using TypeOrm Query Builder - typeorm

I have a subquery that is a union of two queries that I am quering from. I need to achieve the same results using TypeOrm. My query is as below.
select port_id,v.port_name,g.name as country from (
select destination_port_id as port_id from vessels
union
select last_port_id as port_id from vessels) as ports
join vessels_ports v on port_id=v.id join global_countries g on g.id = v.country_id
order by port_id asc;

Related

Join tables in ClickHouse without equal expressions

I need to join two tables with 'between' condition in ClickHouse without equal expressions.
How to implement this logic?
I did:
select a.*, b.name
from a join b
on a.dt between b.start_dt and b.end_dt;
Then got error
Code: 403, e.displayText() = DB::Exception: Invalid expression for JOIN ON. Expected equals expression...
now JOIN in Clickhouse supports equi-join only https://www.w3resource.com/sql/joins/perform-an-equi-join.php
You can use cartesian product and where
select a.*, b.name
from a , b
where a.dt between b.start_dt and b.end_dt;
it's absolutely fine.

Odata equivalent to MySQL query or Mapping of SQL query to OData one

What is Odata equivalent to following mysql keyword or usage
distinct
join/inner join
left join/left outer join
right join/right outer join
full join/full outer join
like operator
min/max operator of a column
rownum or rowcount comparison
group by
having count() and exists()
How to use $expand with respect to join or left outer join in mysql?
Is there is any plugin or tool available which does mapping of SQL query to OData one? Or Conversion of MySQL query to Odata
Thanks

Referencing same hdfs table in my 50 union all statements in impala which is resulting in memory issues

Referencing same hdfs table joins in my 50 union all statements in impala which is resulting in memory issues
Select a,case statement
From a inner join b
On a=b
Union all
Select a,case statement
From a inner join b
On a=b
Union all
Select a,case statement
From a inner join b
On a=b
Union all
Select a,case statement
From a inner join b
On a=b

Neo4j Cypher join group by having result

I have the following query in SQL and I am trying to convert to cypher
select *, sum(quantity) as sum_qty from table1 inner join table2
on table1.t_id = table2.t_id_hd
group by table1.t_id
having sum_qty = table2.total_qty
The Cypher query I have so far is this
MATCH (a:table1)-[:parent]-(b:table2)
WITH a.t_id, sum(a.quantity) as sum_qty, b
WHERE sum_qty = b.total_qty
RETURN a.t_id, b.t_id_hd
This doesn't quite work because there seems to be duplicate b.t_id_hd

Solr outer join / not join query

I may be asking too much but I want to do a left outer join between two cores
and get data from A only where B does not have related data.
Following is exactly my equivalent SQL query (for simplicity I have removed other conditions),
1. SELECT A.* FROM A AS A
WHERE A.ID NOT IN (SELECT B.A_ID FROM B AS B WHERE B.STATUS_ID != 1)
I understand that solr join is actually subquery, I need data from only A.
It would be very easy if the not was not there in where condition for sub query.
For example,
2. SELECT A.* FROM A AS A
WHERE A.ID IN (SELECT B.A_ID FROM B AS B WHERE B.STATUS_ID != 1)
I can have q={!join from=aId to=id fromIndex=b}(-statusId:1).
How can I do a nagete here, i.e. solr query for 1

Resources