SQL UNION Query with Extra Field in Results - sql

I have a SQL query that is working well except I would like to bring the results of another column in the first db with it. This is what I currently have:
SELECT parts1.PART_NBR, parts1.NIIN
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn'
This is what I basically want (of course this wont work):
SELECT parts1.PART_NBR, parts1.NIIN, parts1.ANOTHER_FIELD
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn'
How do I write the query so that it does the same thing but actually brings back the extra field in the results?

Create an empty field, returning NULL
SELECT parts1.PART_NBR, parts1.NIIN, parts1.ANOTHER_FIELD
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION ALL
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN, NULL AS ANOTHER_FIELD
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn'
EDIT:
From your comment you are seeing the results as
Part Number: 21223 NIIN: 008194914 Name: CAPACITOR
Part Number: 21223 NIIN: 011241926 Name: HEAT SINK
Part Number: 21223 NIIN: 003901600 Name: KNIFE
Part Number: 21223 NIIN: 003901600 Name:
Part Number: 21223 NIIN: 008194914 Name:
Part Number: 21223 NIIN: 011241926 Name:
The first results are coming from the table parts1 the second from parts2, the blank Name fields are where you are returning NULL.
From the information you have given I don't see why you are using a UNION to get the results from these two tables as they seem to contain the same information except the first table also has the Name field.
Would it not be better to JOIN the tables on the Part/Reference number in order to select the name?
EDIT:
As you said in your comment, previously you were getting a DISTINCT result set because of using UNION. With the NULL field the rows are no longer unique and the query returns all the rows.
I said in a comment that I do not see what the current UNION statement is doing for you as it seems the same information is both tables. Is there more to this query than what you have told us?

SELECT parts.PART_NBR, parts.NIIN, parts1.ANOTHER_FIELD
FROM (
SELECT parts1.PART_NBR, parts1.NIIN
FROM parts1
WHERE parts1.PART_NBR = '$pn'
UNION
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN
FROM parts2
WHERE parts2.REFERENCE_NUMBER = '$pn'
) AS parts(PART_NBR, NIIN)
LEFT OUTER JOIN parts1
ON parts.PART_NBR = parts1.PART_NBR AND
parts.NIIN = parts1.NIIN

You have to have matching columns, however you can place a "fake" column in the second one that comes back null or whatever default value you want.
SELECT parts1.PART_NBR, parts1.NIIN, parts1.ANOTHER_FIELD
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION
SELECT parts2.REFERENCE_NUMBER, parts2.NIIN, NULL AS ANOTHER_FIELD
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn'

Simple as below:
select part_number, niin, max(field)
from (
SELECT parts1.PART_NBR part_number, parts1.NIIN niin, parts1.ANOTHER_FIELD field
FROM parts1
WHERE parts1.PART_NBR='$pn'
UNION
SELECT parts2.REFERENCE_NUMBER part_number, parts2.NIIN niin, "" field
FROM parts2
WHERE parts2.REFERENCE_NUMBER='$pn')
group by part_number, niin
You just need to accommodate a placeholder in the second query to match the extra field location of the first.

Related

Merge 3 columns into 1 with multiple nested select

I have some data that i need to display on a path layer on deckgl inside super set, the format of the data has to be very specific or else it throws errors, the format is as such
[[],[],[]] anything else will throw errors. My data is in long and lat format which i was able to transform in to proper form, except that some lines are multistring which has this format [[[],[]],[[]]]. i am able to get it into proper format separately in 3 different columns, how do i merge these 3 into 1? tried union distinct by basing my self on this example, with an error "Expected keyword JOIN but got "," at [3:98]" how do i solve this?
SELECT * FROM Employee_Asia UNION DISTINCT SELECT * from
Employee_Europe
****
select * from(
(select replace(substring(geo,1),"[[[", "[[") as ngeo union
DISTINCT
(select replace
(substring(geo,1),"]]]", "]]")) union DISTINCT select replace
(substring(geo,1),"]],[[" ,"], [")), from(
****
select replace(substring(geo,1),"[[[", "[[") as ngeo, (select replace
(substring(geo,1),"]]]", "]]"))as xgeo, (select replace (substring(geo,1),"]],[[" ,"],
["))as zgeo,from(
select geo from (
SELECT
routeID , json_extract(st_asgeojson(st_makeline( array_agg(st_geogpoint(locs.lon,
locs.lat) order by locs.date))),'$.coordinates') as geo,
FROM
howardcounty.routebatches
cross join UNNEST(locations) as locs
where locs.date between {{start_date}} and {{end_date}}
group by routeID
order by routeID
limit 7
)where length(geo)-length(replace(geo,"]","")) > 1+4
)
here is a the result from the query without union, am also limited to select only.
[[-76.832895,39.20946],[-76.8328744528093,39.2094841310634],
[-76.8327537674778,39.2096258661087],[-76.8327516666667,39.2096283333333],
[-76.8326516666667,39.20973],[-76.8326416666667,39.2098316666667],
[-76.8327033333333,39.2099316666667],[-76.83284,39.2099916666667],
[-76.8329033333333,39.210025],[-76.8331,39.2101616666667],
[-76.8332383333333,39.2102366666667],[-76.8333933333333,39.2103233333333],
[-76.8335416666667,39.2103883333333],[-76.8336783333333,39.21044],
[-76.8338,39.2104816666667],[-76.83389,39.2105533333333],
[-76.83389633091,39.2105767090203],[-76.8339113352774,39.2106321097435],
[-76.8339116666667,39.2106333333333],[-76.8338887881129,39.2106764906686],
[-76.8338383333333,39.2107716666667],[-76.8337783333333,39.2108866666667],
[-76.8337710512136,39.2110192012812],[-76.83377,39.2110383333333],
[-76.8338232468397,39.2111109427531],[-76.83388,39.2111883333333],
[-76.8340466666667,39.2111883333333],[-76.834145,39.211135],
[-76.8341866666667,39.2110433333333],[-76.8342116666667,39.2110016666667],
[-76.83428,39.2108766666667],[-76.8343283333333,39.210795],[-76.83439,39.2107266666667],
[-76.8344492363899,39.2106641394387],[-76.83451,39.2106],[-76.834715,39.21045],
[-76.8349033333333,39.2103033333333],[-76.83497,39.21014],[-76.8349733333333,39.21006],
[-76.834985,39.21022],[-76.834865,39.2104133333333],[-76.83476,39.21059],
[-76.8347916666667,39.21075],[-76.8350466666667,39.2108316666667],
[-76.8352283333333,39.2107116666667],[-76.83532,39.2105266666667],
[-76.8354483333333,39.2103633333333],[-76.83555,39.21017],
[-76.8356666666667,39.2100466666667],[-76.8358216666667,39.21004],
[-76.8358733333333,39.2101316666667],[-76.8358316666667,39.2102883333333],
[-76.8359,39.210425],[-76.8358689842204,39.2104852071477],[-76.8358433333333,39.210535],
[-76.8356983333333,39.210565],[-76.8357383333333,39.210475],
[-76.8358689842204,39.2104852071477],[-76.8359516666667,39.2104916666667],
[-76.8360516666667,39.210455],[-76.8361533333333,39.2102916666667],
[-76.836285,39.210175],[-76.8364766666667,39.21023],[-76.8366683333333,39.21028],
[-76.8368166666667,39.210305],[-76.836955,39.2103233333333],
[-76.83699,39.2103183333333],[-76.8373016666667,39.2103166666667],
[-76.8374566666667,39.2103016666667],[-76.8376066666667,39.21029],
[-76.8377616666667,39.2103016666667],[-76.83795,39.210335],
[-76.8381333333333,39.2104033333333],[-76.83831,39.2105133333333],
[-76.8384333333333,39.2106416666667],[-76.8385183333333,39.210785],
[-76.8385616666667,39.210935],[-76.838585,39.2110366666667],
[-76.8386083333334,39.2111266666667],[-76.83865,39.211245],
[-76.8387166666667,39.211505],[-76.838855,39.2116916666667],
[-76.839035,39.2118216666667],[-76.8392,39.2119766666667],[-76.8393516666667,39.212125],
[-76.83948,39.21218],[-76.8395733333333,39.2121633333333],
[-76.8398377180994,39.212155736099],[-76.839863333316,39.2121550000005],
[-76.8398633333333,39.212155],[-76.839866248213,39.2121550000002],
[-76.8398683333333,39.212155],[-76.839885,39.212155]],
[[-76.839863333316,39.2121550000005],[-76.83984,39.212155],
[-76.8398377180994,39.212155736099],[-76.839685,39.212205],
[-76.8395033333333,39.212245],[-76.83924,39.2121616666667],
[-76.8390316666667,39.2119483333333],[-76.8388216666667,39.2117766666667],
[-76.8387066666667,39.21161],[-76.838545,39.21148],[-76.8383866666667,39.211435],
[-76.8381966666667,39.2114216666667],[-76.8380266666667,39.21142],
[-76.8378533333333,39.2114133333333],[-76.8376933333333,39.2114116666667],
[-76.837545,39.2113983333333],[-76.837365,39.2114166666667],
[-76.837145,39.2113883333333],[-76.83696,39.2113683333333],[-76.8368116666667,39.21135],
[-76.8366616666667,39.211345],[-76.8365166666667,39.21134],
[-76.836395,39.2113383333333],[-76.83635,39.21134],[-76.8361416666667,39.21133],
[-76.8359466666667,39.2112916666667],[-76.8358183333333,39.2112233333333],
[-76.8357733333333,39.2111683333333],[-76.8357366666667,39.211055],
[-76.8356816666667,39.2109716666667],[-76.83552,39.211005],
[-76.8353483333333,39.2109983333333],[-76.8351966666667,39.2109416666667],
[-76.835055,39.210885],[-76.8349033333333,39.21081],[-76.83475,39.2107766666667],
[-76.834625,39.2107333333333],[-76.83449,39.2106866666667],
[-76.8344492363899,39.2106641394387],[-76.8343633333333,39.2106166666667],
[-76.834205,39.21054],[-76.8340283333333,39.2105483333333],
[-76.833938122743,39.2106129286176],[-76.8339113352774,39.2106321097435],
[-76.8338933333333,39.210645],[-76.8338216666667,39.2107666666667],
[-76.83377,39.2108516666667],[-76.8337333333333,39.2109116666667],
[-76.8337122666612,39.2109696000596],[-76.8336933333333,39.2110216666667],
[-76.8337276727651,39.2110803760451],[-76.833745,39.21111],
[-76.8338232468397,39.2111109427531],[-76.8338833333333,39.2111116666667],
[-76.83392,39.211055],[-76.8339716666667,39.2109833333333],
[-76.8340783333333,39.2108283333333],[-76.8340766666667,39.210725],
[-76.8339833333333,39.2106566666667],[-76.8339611067922,39.2106613270793],
[-76.8338887881129,39.2106764906686],[-76.83388,39.2106783333333],
[-76.8338083333333,39.2108016666667],[-76.83373,39.2109366666667],
[-76.8337122666612,39.2109696000596],[-76.83366,39.2110666666667],
[-76.8335933333333,39.21119],[-76.8335266666667,39.211375],[-76.83353,39.2116183333333],
[-76.833635,39.2118683333333],[-76.8338283333333,39.212085],
[-76.8340583333333,39.2123116666667],[-76.8342483333333,39.21253],[-76.834345,39.21274],
[-76.8344233333333,39.212935],[-76.8343933333333,39.21316],
[-76.8345383333333,39.2133166666667],[-76.8347266666667,39.213195],
[-76.8345933333333,39.2129983333333],[-76.834455,39.2127816666667],
[-76.8343833333333,39.212615],[-76.834365,39.2125766666667],
[-76.83429,39.2124883333333],[-76.83412,39.21229],[-76.8339066666667,39.2120766666667],
[-76.8337066666667,39.21187],[-76.8336,39.2116516666667],
[-76.8335816666667,39.2114666666667],[-76.8336083333333,39.211325],
[-76.8336516666667,39.2112016666667],[-76.8337066666667,39.21111],
[-76.8337276727651,39.2110803760451],[-76.8337710512136,39.2110192012812],
[-76.8337716666667,39.2110183333333],[-76.8338516666667,39.2109],
[-76.83392,39.2108133333333],[-76.83396,39.2107166666667],
[-76.8339611067922,39.2106613270793],[-76.8339616666667,39.2106333333333],
[-76.833938122743,39.2106129286176],[-76.83389633091,39.2105767090203],
[-76.8338866666667,39.2105683333333],[-76.833715,39.2105016666667],
[-76.833595,39.2104533333333],[-76.83358,39.21045],[-76.833405,39.2103716666667],
[-76.83337,39.210365],[-76.8332116666667,39.2103166666667],[-76.8330966666667,39.21027],
[-76.83299,39.2102233333333],[-76.83286,39.2101766666667],
[-76.8327283333333,39.2101333333333],[-76.8325683333333,39.2100616666667],
[-76.832535,39.2100016666667],[-76.8325183333333,39.2098966666667],
[-76.8325066666667,39.2097333333333],[-76.8324919958592,39.209720248584],
[-76.8323833333333,39.2096233333333],[-76.8321633333333,39.2095333333333],
[-76.8320825997553,39.20948763515],[-76.8319866666667,39.2094333333333],
[-76.8319816666667,39.2092766666667],[-76.83207,39.2091466666667],[-76.832225,39.20905],
[-76.8323483333333,39.2091416666667],[-76.8322416666667,39.2093283333333],
[-76.8321066666667,39.209475],[-76.8320825997553,39.20948763515],
[-76.8319733333333,39.209545],[-76.831862668414,39.20954057341],
[-76.8318483333334,39.20954],[-76.8318415539569,39.2095171966764],
[-76.8318116666667,39.2094166666667],[-76.8318683333333,39.2093033333333],
[-76.8319233333333,39.209195],[-76.8318483333334,39.2091033333333],
[-76.8317466666667,39.2090916666667],[-76.8317216666667,39.209135],
[-76.8317866666667,39.2093583333333],[-76.83182,39.2094933333333],
[-76.8318415539569,39.2095171966764],[-76.831862668414,39.20954057341],
[-76.8319133333333,39.2095966666667],[-76.8318683333333,39.2097],
[-76.8318416666667,39.2097383333333],[-76.8318116666667,39.2098966666667],
[-76.8319366666667,39.2099516666667],[-76.832085,39.21],[-76.83213,39.21008],
[-76.8322416666667,39.2101083333333],[-76.832365,39.2100483333333],
[-76.8324283333333,39.20996],[-76.832475,39.209885],[-76.83249,39.20984],
[-76.8324919958592,39.209720248584],[-76.8324924676826,39.2096919391536],
[-76.8324933333333,39.20964],[-76.8325983333333,39.2094983333333],
[-76.8326833333333,39.2093466666667],[-76.83268,39.2091916666667],
[-76.8324833333333,39.2091266666667],[-76.8323283333333,39.2092133333333],
[-76.83233,39.209355],[-76.8323516666667,39.209475],
[-76.8323933333333,39.2096216666667],[-76.8324924676826,39.2096919391536],
[-76.832525,39.209715],[-76.8326783333333,39.2096816666667],
[-76.8327537674778,39.2096258661087],[-76.8328,39.2095916666667],
[-76.8328766666667,39.2095216666667],[-76.8329,39.20949],
[-76.8328744528093,39.2094841310634],[-76.8327766666667,39.2094616666667],
[-76.8327466666667,39.2095066666667],[-76.832685,39.209635],
[-76.83268,39.2096466666667]]] [[[-76.832895,39.20946],
[-76.8328744528093,39.2094841310634],[-76.8327537674778,39.2096258661087],
[-76.8327516666667,39.2096283333333],[-76.8326516666667,39.20973],
[-76.8326416666667,39.2098316666667],[-76.8327033333333,39.2099316666667],
[-76.83284,39.2099916666667],[-76.8329033333333,39.210025],[-76.8331,39.2101616666667],
[-76.8332383333333,39.2102366666667],[-76.8333933333333,39.2103233333333],
[-76.8335416666667,39.2103883333333],[-76.8336783333333,39.21044],
[-76.8338,39.2104816666667],[-76.83389,39.2105533333333],
[-76.83389633091,39.2105767090203],[-76.8339113352774,39.2106321097435],
[-76.8339116666667,39.2106333333333],[-76.8338887881129,39.2106764906686],
[-76.8338383333333,39.2107716666667],[-76.8337783333333,39.2108866666667],
[-76.8337710512136,39.2110192012812],[-76.83377,39.2110383333333],
[-76.8338232468397,39.2111109427531],[-76.83388,39.2111883333333],
[-76.8340466666667,39.2111883333333],[-76.834145,39.211135],
[-76.8341866666667,39.2110433333333],[-76.8342116666667,39.2110016666667],
[-76.83428,39.2108766666667],[-76.8343283333333,39.210795],[-76.83439,39.2107266666667],
[-76.8344492363899,39.2106641394387],[-76.83451,39.2106],[-76.834715,39.21045],
[-76.8349033333333,39.2103033333333],[-76.83497,39.21014],[-76.8349733333333,39.21006],
[-76.834985,39.21022],[-76.834865,39.2104133333333],[-76.83476,39.21059],
[-76.8347916666667,39.21075],[-76.8350466666667,39.2108316666667],
[-76.8352283333333,39.2107116666667],[-76.83532,39.2105266666667],
[-76.8354483333333,39.2103633333333],[-76.83555,39.21017],
[-76.8356666666667,39.2100466666667],[-76.8358216666667,39.21004],
[-76.8358733333333,39.2101316666667],[-76.8358316666667,39.2102883333333],
[-76.8359,39.210425],[-76.8358689842204,39.2104852071477],[-76.8358433333333,39.210535],
[-76.8356983333333,39.210565],[-76.8357383333333,39.210475],
[-76.8358689842204,39.2104852071477],[-76.8359516666667,39.2104916666667],
[-76.8360516666667,39.210455],[-76.8361533333333,39.2102916666667],
[-76.836285,39.210175],[-76.8364766666667,39.21023],[-76.8366683333333,39.21028],
[-76.8368166666667,39.210305],[-76.836955,39.2103233333333],
[-76.83699,39.2103183333333],[-76.8373016666667,39.2103166666667],
[-76.8374566666667,39.2103016666667],[-76.8376066666667,39.21029],
[-76.8377616666667,39.2103016666667],[-76.83795,39.210335],
[-76.8381333333333,39.2104033333333],[-76.83831,39.2105133333333],
[-76.8384333333333,39.2106416666667],[-76.8385183333333,39.210785],
[-76.8385616666667,39.210935],[-76.838585,39.2110366666667],
[-76.8386083333334,39.2111266666667],[-76.83865,39.211245],
[-76.8387166666667,39.211505],[-76.838855,39.2116916666667],
[-76.839035,39.2118216666667],[-76.8392,39.2119766666667],[-76.8393516666667,39.212125],
[-76.83948,39.21218],[-76.8395733333333,39.2121633333333],
[-76.8398377180994,39.212155736099],[-76.839863333316,39.2121550000005],
[-76.8398633333333,39.212155],[-76.839866248213,39.2121550000002],
[-76.8398683333333,39.212155],[-76.839885,39.212155]],
[[-76.839863333316,39.2121550000005],[-76.83984,39.212155],
[-76.8398377180994,39.212155736099],[-76.839685,39.212205],
[-76.8395033333333,39.212245],[-76.83924,39.2121616666667],
[-76.8390316666667,39.2119483333333],[-76.8388216666667,39.2117766666667],
[-76.8387066666667,39.21161],[-76.838545,39.21148],[-76.8383866666667,39.211435],
[-76.8381966666667,39.2114216666667],[-76.8380266666667,39.21142],
[-76.8378533333333,39.2114133333333],[-76.8376933333333,39.2114116666667],
[-76.837545,39.2113983333333],[-76.837365,39.2114166666667],
[-76.837145,39.2113883333333],[-76.83696,39.2113683333333],[-76.8368116666667,39.21135],
[-76.8366616666667,39.211345],[-76.8365166666667,39.21134],
[-76.836395,39.2113383333333],[-76.83635,39.21134],[-76.8361416666667,39.21133],
[-76.8359466666667,39.2112916666667],[-76.8358183333333,39.2112233333333],
[-76.8357733333333,39.2111683333333],[-76.8357366666667,39.211055],
[-76.8356816666667,39.2109716666667],[-76.83552,39.211005],
[-76.8353483333333,39.2109983333333],[-76.8351966666667,39.2109416666667],
[-76.835055,39.210885],[-76.8349033333333,39.21081],[-76.83475,39.2107766666667],
[-76.834625,39.2107333333333],[-76.83449,39.2106866666667],
[-76.8344492363899,39.2106641394387],[-76.8343633333333,39.2106166666667],
[-76.834205,39.21054],[-76.8340283333333,39.2105483333333],
[-76.833938122743,39.2106129286176],[-76.8339113352774,39.2106321097435],
[-76.8338933333333,39.210645],[-76.8338216666667,39.2107666666667],
[-76.83377,39.2108516666667],[-76.8337333333333,39.2109116666667],
[-76.8337122666612,39.2109696000596],[-76.8336933333333,39.2110216666667],
[-76.8337276727651,39.2110803760451],[-76.833745,39.21111],
[-76.8338232468397,39.2111109427531],[-76.8338833333333,39.2111116666667],
[-76.83392,39.211055],[-76.8339716666667,39.2109833333333],
[-76.8340783333333,39.2108283333333],[-76.8340766666667,39.210725],
[-76.8339833333333,39.2106566666667],[-76.8339611067922,39.2106613270793],
[-76.8338887881129,39.2106764906686],[-76.83388,39.2106783333333],
[-76.8338083333333,39.2108016666667],[-76.83373,39.2109366666667],
[-76.8337122666612,39.2109696000596],[-76.83366,39.2110666666667],
[-76.8335933333333,39.21119],[-76.8335266666667,39.211375],[-76.83353,39.2116183333333],
[-76.833635,39.2118683333333],[-76.8338283333333,39.212085],
[-76.8340583333333,39.2123116666667],[-76.8342483333333,39.21253],[-76.834345,39.21274],
[-76.8344233333333,39.212935],[-76.8343933333333,39.21316],
[-76.8345383333333,39.2133166666667],[-76.8347266666667,39.213195],
[-76.8345933333333,39.2129983333333],[-76.834455,39.2127816666667],
[-76.8343833333333,39.212615],[-76.834365,39.2125766666667],
[-76.83429,39.2124883333333],[-76.83412,39.21229],[-76.8339066666667,39.2120766666667],
[-76.8337066666667,39.21187],[-76.8336,39.2116516666667],
[-76.8335816666667,39.2114666666667],[-76.8336083333333,39.211325],
[-76.8336516666667,39.2112016666667],[-76.8337066666667,39.21111],
[-76.8337276727651,39.2110803760451],[-76.8337710512136,39.2110192012812],
[-76.8337716666667,39.2110183333333],[-76.8338516666667,39.2109],
[-76.83392,39.2108133333333],[-76.83396,39.2107166666667],
[-76.8339611067922,39.2106613270793],[-76.8339616666667,39.2106333333333],
[-76.833938122743,39.2106129286176],[-76.83389633091,39.2105767090203],
[-76.8338866666667,39.2105683333333],[-76.833715,39.2105016666667],
[-76.833595,39.2104533333333],[-76.83358,39.21045],[-76.833405,39.2103716666667],
[-76.83337,39.210365],[-76.8332116666667,39.2103166666667],[-76.8330966666667,39.21027],
[-76.83299,39.2102233333333],[-76.83286,39.2101766666667],
[-76.8327283333333,39.2101333333333],[-76.8325683333333,39.2100616666667],
[-76.832535,39.2100016666667],[-76.8325183333333,39.2098966666667],
[-76.8325066666667,39.2097333333333],[-76.8324919958592,39.209720248584],
[-76.8323833333333,39.2096233333333],[-76.8321633333333,39.2095333333333],
[-76.8320825997553,39.20948763515],[-76.8319866666667,39.2094333333333],
[-76.8319816666667,39.2092766666667],[-76.83207,39.2091466666667],[-76.832225,39.20905],
[-76.8323483333333,39.2091416666667],[-76.8322416666667,39.2093283333333],
[-76.8321066666667,39.209475],[-76.8320825997553,39.20948763515],
[-76.8319733333333,39.209545],[-76.831862668414,39.20954057341],
[-76.8318483333334,39.20954],[-76.8318415539569,39.2095171966764],
[-76.8318116666667,39.2094166666667],[-76.8318683333333,39.2093033333333],
[-76.8319233333333,39.209195],[-76.8318483333334,39.2091033333333],
[-76.8317466666667,39.2090916666667],[-76.8317216666667,39.209135],
[-76.8317866666667,39.2093583333333],[-76.83182,39.2094933333333],
[-76.8318415539569,39.2095171966764],[-76.831862668414,39.20954057341],
[-76.8319133333333,39.2095966666667],[-76.8318683333333,39.2097],
[-76.8318416666667,39.2097383333333],[-76.8318116666667,39.2098966666667],
[-76.8319366666667,39.2099516666667],[-76.832085,39.21],[-76.83213,39.21008],
[-76.8322416666667,39.2101083333333],[-76.832365,39.2100483333333],
[-76.8324283333333,39.20996],[-76.832475,39.209885],
[-76.83233,39.209355],[-76.8323516666667,39.209475],
[-76.8323933333333,39.2096216666667],[-76.8324924676826,39.2096919391536],
[-76.832525,39.209715],[-76.8326783333333,39.2096816666667],
[-76.8327537674778,39.2096258661087],[-76.8328,39.2095916666667],
[-76.8328766666667,39.2095216666667],[-76.8329,39.20949],
[-76.8328744528093,39.2094841310634],[-76.8327766666667,39.2094616666667],
[-76.8327466666667,39.2095066666667],[-76.832685,39.209635],
[-76.83268,39.2096466666667]] [[[-76.832895,39.20946],
[-76.8328744528093,39.2094841310634],[-76.8327537674778,39.2096258661087],
[-76.8327516666667,39.2096283333333],[-76.8326516666667,39.20973],
[-76.8326416666667,39.2098316666667],[-76.8327033333333,39.2099316666667],
[-76.83284,39.2099916666667],[-76.8329033333333,39.210025],[-76.8331,39.2101616666667],
[-76.8332383333333,39.2102366666667],[-76.8333933333333,39.2103233333333],
[-76.8335416666667,39.2103883333333],[-76.8336783333333,39.21044],
[-76.8338,39.2104816666667],[-76.83389,39.2105533333333],
[-76.83389633091,39.2105767090203],[-76.8339113352774,39.2106321097435],
[-76.8339116666667,39.2106333333333],[-76.8338887881129,39.2106764906686],
[-76.8338383333333,39.2107716666667],[-76.8337783333333,39.2108866666667],
[-76.8337710512136,39.2110192012812],[-76.83377,39.2110383333333],
[-76.8338232468397,39.2111109427531],[-76.83388,39.2111883333333],
[-76.8340466666667,39.2111883333333],[-76.834145,39.211135],
[-76.8341866666667,39.2110433333333],[-76.8342116666667,39.2110016666667],
[-76.83428,39.2108766666667],[-76.8343283333333,39.210795],[-76.83439,39.2107266666667],
[-76.8344492363899,39.2106641394387],[-76.83451,39.2106],[-76.834715,39.21045],
[-76.8349033333333,39.2103033333333],[-76.83497,39.21014],[-76.8349733333333,39.21006],
[-76.834985,39.21022],[-76.834865,39.2104133333333],[-76.83476,39.21059],
[-76.8347916666667,39.21075],[-76.8350466666667,39.2108316666667],
[-76.8352283333333,39.2107116666667],[-76.83532,39.2105266666667],
[-76.8354483333333,39.2103633333333],[-76.83555,39.21017],
[-76.8356666666667,39.2100466666667],[-76.8358216666667,39.21004],
[-76.8358733333333,39.2101316666667],[-76.8358316666667,39.2102883333333],
[-76.8359,39.210425],[-76.8358689842204,39.2104852071477],[-76.8358433333333,39.210535],
[-76.8356983333333,39.210565],[-76.8357383333333,39.210475],
[-76.8358689842204,39.2104852071477],[-76.8359516666667,39.2104916666667],
[-76.8360516666667,39.210455],[-76.8361533333333,39.2102916666667],
[-76.836285,39.210175],[-76.8364766666667,39.21023],[-76.8366683333333,39.21028],
[-76.8368166666667,39.210305],[-76.836955,39.2103233333333],
[-76.83699,39.2103183333333],[-76.8373016666667,39.2103166666667],
[-76.8374566666667,39.2103016666667],[-76.8376066666667,39.21029],
[-76.8377616666667,39.2103016666667],[-76.83795,39.210335],
[-76.8381333333333,39.2104033333333],[-76.83831,39.2105133333333],
[-76.8384333333333,39.2106416666667],[-76.8385183333333,39.210785],
[-76.8385616666667,39.210935],[-76.838585,39.2110366666667],
[-76.8386083333334,39.2111266666667],[-76.83865,39.211245],
[-76.8387166666667,39.211505],[-76.838855,39.2116916666667],
[-76.839035,39.2118216666667],[-76.8392,39.2119766666667],[-76.8393516666667,39.212125],
[-76.83948,39.21218],[-76.8395733333333,39.2121633333333],
[-76.8398377180994,39.212155736099],[-76.839863333316,39.2121550000005],
[-76.8398633333333,39.212155],[-76.839866248213,39.2121550000002],
[-76.8398683333333,39.212155],[-76.839885,39.212155],
[-76.839863333316,39.2121550000005],[-76.83984,39.212155],
[-76.8398377180994,39.212155736099],[-76.839685,39.212205],
[-76.8395033333333,39.212245],[-76.83924,39.2121616666667],
[-76.8390316666667,39.2119483333333],[-76.8388216666667,39.2117766666667],
[-76.8387066666667,39.21161],[-76.838545,39.21148],[-76.8383866666667,39.211435],
[-76.8381966666667,39.2114216666667],[-76.8380266666667,39.21142],
[-76.8378533333333,39.2114133333333],[-76.8376933333333,39.2114116666667],
[-76.837545,39.2113983333333],[-76.837365,39.2114166666667],
[-76.837145,39.2113883333333],[-76.83696,39.2113683333333],[-76.8368116666667,39.21135],
[-76.8366616666667,39.211345],[-76.8365166666667,39.21134],
[-76.836395,39.2113383333333],[-76.83635,39.21134],[-76.8361416666667,39.21133],
[-76.8359466666667,39.2112916666667],[-76.8358183333333,39.2112233333333],
[-76.8357733333333,39.2111683333333],[-76.8357366666667,39.211055],
[-76.8356816666667,39.2109716666667],[-76.83552,39.211005],
[-76.8353483333333,39.2109983333333],[-76.8351966666667,39.2109416666667],
[-76.835055,39.210885],[-76.8349033333333,39.21081],[-76.83475,39.2107766666667],
[-76.834625,39.2107333333333],[-76.83449,39.2106866666667],
[-76.8344492363899,39.2106641394387],[-76.8343633333333,39.2106166666667],
[-76.834205,39.21054],[-76.8340283333333,39.2105483333333],
[-76.833938122743,39.2106129286176],[-76.8339113352774,39.2106321097435],
[-76.8338933333333,39.210645],[-76.8338216666667,39.2107666666667],
[-76.83377,39.2108516666667],[-76.8337333333333,39.2109116666667],
[-76.8337122666612,39.2109696000596],[-76.8336933333333,39.2110216666667],
[-76.8337276727651,39.2110803760451],[-76.833745,39.21111],
[-76.8338232468397,39.2111109427531],[-76.8338833333333,39.2111116666667],
[-76.83392,39.211055],[-76.8339716666667,39.2109833333333],
[-76.8340783333333,39.2108283333333],[-76.8340766666667,39.210725],
[-76.8339833333333,39.2106566666667],[-76.8339611067922,39.2106613270793],
[-76.8338887881129,39.2106764906686],[-76.83388,39.2106783333333],
[-76.8338083333333,39.2108016666667],[-76.83373,39.2109366666667],
[-76.8337122666612,39.2109696000596],[-76.83366,39.2110666666667],
[-76.8335933333333,39.21119],[-76.8335266666667,39.211375],[-76.83353,39.2116183333333],
[-76.833635,39.2118683333333],[-76.8338283333333,39.212085],
[-76.8340583333333,39.2123116666667],[-76.8342483333333,39.21253],[-76.834345,39.21274],
[-76.8344233333333,39.212935],[-76.8343933333333,39.21316],
[-76.8345383333333,39.2133166666667],[-76.8347266666667,39.213195],
[-76.8345933333333,39.2129983333333],[-76.834455,39.2127816666667],
[-76.8343833333333,39.212615],[-76.834365,39.2125766666667],
[-76.83429,39.2124883333333],[-76.83412,39.21229],[-76.8339066666667,39.2120766666667],
[-76.8337066666667,39.21187],[-76.8336,39.2116516666667],
[-76.8335816666667,39.2114666666667],[-76.8336083333333,39.211325],
[-76.8336516666667,39.2112016666667],[-76.8337066666667,39.21111],
[-76.8337276727651,39.2110803760451],[-76.8337710512136,39.2110192012812],
[-76.8337716666667,39.2110183333333],[-76.8338516666667,39.2109],
[-76.83392,39.2108133333333],[-76.83396,39.2107166666667],
[-76.8339611067922,39.2106613270793],[-76.8339616666667,39.2106333333333],
[-76.833938122743,39.2106129286176],[-76.83389633091,39.2105767090203],
[-76.8338866666667,39.2105683333333],[-76.833715,39.2105016666667],
[-76.833595,39.2104533333333],[-76.83358,39.21045],[-76.833405,39.2103716666667],
[-76.83337,39.210365],[-76.8332116666667,39.2103166666667],[-76.8330966666667,39.21027],
[-76.83299,39.2102233333333],[-76.83286,39.2101766666667],
[-76.8327283333333,39.2101333333333],[-76.8325683333333,39.2100616666667],
[-76.832535,39.2100016666667],[-76.8325183333333,39.2098966666667],
[-76.8325066666667,39.2097333333333],[-76.8324919958592,39.209720248584],
[-76.8323833333333,39.2096233333333],[-76.8321633333333,39.2095333333333],
[-76.8320825997553,39.20948763515],[-76.8319866666667,39.2094333333333],
[-76.8319816666667,39.2092766666667],[-76.83207,39.2091466666667],[-76.832225,39.20905],
[-76.8323483333333,39.2091416666667],[-76.8322416666667,39.2093283333333],
[-76.8321066666667,39.209475],[-76.8320825997553,39.20948763515],
[-76.8319733333333,39.209545],[-76.831862668414,39.20954057341],
[-76.8318483333334,39.20954],[-76.8318415539569,39.2095171966764],
[-76.8318116666667,39.2094166666667],[-76.8318683333333,39.2093033333333],
[-76.8319233333333,39.209195],[-76.8318483333334,39.2091033333333],
[-76.8317466666667,39.2090916666667],[-76.8317216666667,39.209135],
[-76.8317866666667,39.2093583333333],[-76.83182,39.2094933333333],
[-76.8318415539569,39.2095171966764],[-76.831862668414,39.20954057341],
[-76.8319133333333,39.2095966666667],[-76.8318683333333,39.2097],
[-76.8318416666667,39.2097383333333],[-76.8318116666667,39.2098966666667],
[-76.8319366666667,39.2099516666667],[-76.832085,39.21],[-76.83213,39.21008],
[-76.8322416666667,39.2101083333333],[-76.832365,39.2100483333333],
[-76.8324283333333,39.20996],[-76.832475,39.209885],[-76.83249,39.20984],
[-76.8324919958592,39.209720248584],[-76.8324924676826,39.2096919391536],
[-76.8324933333333,39.20964],[-76.8325983333333,39.2094983333333],
[-76.8326833333333,39.2093466666667],[-76.83268,39.2091916666667],
[-76.8324833333333,39.2091266666667],[-76.8323283333333,39.2092133333333],
[-76.83233,39.209355],[-76.8323516666667,39.209475],
[-76.8323933333333,39.2096216666667],[-76.8324924676826,39.2096919391536],
[-76.832525,39.209715],[-76.8326783333333,39.2096816666667],
[-76.8327537674778,39.2096258661087],[-76.8328,39.2095916666667],
[-76.8328766666667,39.2095216666667],[-76.8329,39.20949],
[-76.8328744528093,39.2094841310634],[-76.8327766666667,39.2094616666667],
[-76.8327466666667,39.2095066666667],[-76.832685,39.209635],
[-76.83268,39.2096466666667]]]
ok found the answer, will put it here in case some one else has the same issue.
the trick is to do nested replace instead separate ones. just change this line
select * from(
(select replace(substring(geo,1),"[[[", "[[") as ngeo union
DISTINCT
(select replace
(substring(geo,1),"]]]", "]]")) union DISTINCT select replace
(substring(geo,1),"]],[[" ,"], ["))
with
select replace(replace(replace(substring(geo,1),"[[[", "[["),"]]]",
"]]"),"]],[[" ,"],[" ) as ngeo

Get SQL Server column names with values

I am trying to create a query that allows me to have the column name next to its column values that it finds.
As an example:
SELECT
*
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME = 'saverTbl'
The above returns all of the column names in that table like this:
id, Link_userTblID, type, environment, vendor, theGUID, theGUID, etc etc...
Now what I need is to get the output from the table name next to the value. This is my query to just get my values from the table:
SELECT
*
FROM
saverTbl
WHERE
LINK_userTblID = #val1
The above returns the row that matches the LINK_userTblID like so:
32, 1, 'Blah', 'something', 'Adobe', 546656156-45332-54616516-4515, etc etc..
Now putting that all together (which is what this question is all about):
id: 32,
LINK_userTblID: 1,
type: Blah,
environment: something,
vendor: Adobe,
theGUID: 546656156-45332-54616516-4515,
etc etc.....
Pretty much needing the output in a json format but the column name matching up with the columns value.
Try this:
SELECT * FROM saverTbl
WHERE LINK_userTblID = #val1
FOR JSON PATH
Assuming, this is meant for one single row you can try this:
WITH cte AS
(
SELECT
(SELECT TOP 1 * FROM sys.objects FOR XML PATH('row'),TYPE) AS TheXml
)
SELECT TheElement.value('local-name(.)','nvarchar(max)')
+ ': '
+ TheElement.value('text()[1]','nvarchar(max)') AS YourOutput
FROM cte
CROSS APPLY TheXml.nodes('/row/*') AS A(TheElement);
The result:
YourOutput
---------------
name: sysrscols
object_id: 3
schema_id: 4
parent_object_id: 0
type: S
type_desc: SYSTEM_TABLE
create_date: 2012-02-10T20:15:58.693
modify_date: 2012-02-10T20:15:58.700
is_ms_shipped: 1
is_published: 0
is_schema_published: 0
XML in connection with XQuery and XPath is a very mighty toolset to solve rather generic problems. The cte builds an XML which looks like this:
<row>
<name>sysrscols</name>
<object_id>3</object_id>
<schema_id>4</schema_id>
<parent_object_id>0</parent_object_id>
<type>S </type>
<type_desc>SYSTEM_TABLE</type_desc>
<create_date>2012-02-10T20:15:58.693</create_date>
<modify_date>2012-02-10T20:15:58.700</modify_date>
<is_ms_shipped>1</is_ms_shipped>
<is_published>0</is_published>
<is_schema_published>0</is_schema_published>
</row>
The call to /row/* retrieves all nodes below <row> as derived table. The rest is rather easy XQuery.

Appending in middle of text in column data oracle sql

I need to append the text in middle of text .
1 EX :existing text is : "Monoclonal Anti-FLAG, Clone 6F7"
Result :"<HIDE>Monoclonal Anti-<HIDE>FLAG, Clone 6F7".
2 EX :existing text is : "Anti-100-KD subunit"
Result : "<HIDE> Anti-</HIDE>100-KD subunit"
I want to append <HIDE> tag where ever Anti and Monoclonal term is coming.
select * from table where regexp_like(colnanme, '^(Monoclonal Anti|Anti)')
Can you suggest how should i write this .for select i have written query .
The predicted certain regular expression solution.
-- Start test data
with test_data as
(select 'Monoclonal Anti-FLAG, Clone 6F7' as test_string from dual union all
select 'Anti-100-KD subunit' from dual)
-- End test data
select test_string,
REGEXP_REPLACE(test_string,'(Monoclonal Anti-|Anti-)','<HIDE>\1</HIDE>')
from test_data;
"TEST_STRING" "Result"
"Monoclonal Anti-FLAG, Clone 6F7" "<HIDE>Monoclonal Anti-</HIDE>FLAG, Clone 6F7"
"Anti-100-KD subunit" "<HIDE>Anti-</HIDE>100-KD subunit"
you could use replace and like
select replace(colname, 'Anti', '"<HIDE> Anti-</HIDE> )
from table where colname like '%Anti%'
and colname not like 'Monoclonal Anti%';
of for a combined situation you can use a case when for lead replace
select case when colname like '%Monoclonal Anti%'
then replace(colname, 'Monoclonal Anti', '"<HIDE> Monoclonal Anti-</HIDE> )
when colname like '%Anti%'
then replace(colname, 'Anti', '"<HIDE> Anti-</HIDE> )
else colname
end
from table where colname like '%Anti%';

Syntax error using the WITH clause

I am trying to setup a CTE table with a series of quarterly dates.
The query returns [42601] ERROR: syntax error at or near "values" Position: 38
with q(qqyy, firstday, lastday) as (
values
('Q4_10', '09-30-2010', '12-31-2010'),
('Q1_11', '12-31-2010', '03-31-2011'),
('Q2_11', '03-31-2011', '06/30/2011'),
('Q3_11', '06/30/2011', '09/30/2011'),
('Q4_11', '09/30/2011', '12/31/2011'),
('Q1_12', '12/31/2011', '03/31/2012'),
('Q2_12', '03/31/2012', '06/30/2012'),
('Q3_12', '06/30/2012', '09/30/2012'),
('Q4_12', '09/30/2012', '12/31/2012'),
('Q1_13', '12/31/2012', '03/31/2013'),
('Q2_13', '03/31/2013', '06/30/2013'),
('Q3_13', '06/30/2013', '09/30/2013'),
('Q4_13', '09/30/2013', '12/31/2013'),
('Q1_14', '12/31/2013', '03/31/2014'),
('Q2_14', '03/31/2014', '06/30/2014'),
('Q3_14', '06/30/2014', '09/30/2014'),
('Q4_14', '09/30/2014', '12/31/2014'),
('Q1_15', '12/31/2014', '03/31/2015'),
('Q2_15', '03/31/2015', '06/30/2015'),
('Q3_15', '06/30/2015', '09/30/2015'),
('Q4_15', '09/30/2015', '12/31/2015'),
('Q1_16', '12/31/2015', '03/31/2016'),
('Q2_16', '03/31/2016', '06/30/2016'),
('Q3_16', '06/30/2016', '09/30/2016'),
('Q4_16', '09/30/2016', '12/31/2016')
)
SELECT q.qqyy, cobrand_id, sum(calc)
into temp_08.cmg_calc
from temp_08.cmg s
join q on
s.transaction_date >= q.firstday
and s.transaction_date <= q.lastday
GROUP BY q.qqyy, cobrand_id;
It appears that the above query is getting stuck on "values" due to Redshift using an older version of postgresql (http://docs.aws.amazon.com/redshift/latest/dg/c_unsupported-postgresql-features.html). But for some reason the below query that also uses "values" works fine. Any idea how I can get the above query to work using redshift?
create table temp_08.cmgquarters (
quarter_col text
, date_from date
, date_to date
);
insert into temp_08.cmgquarters
values
('Q4_10', '09-30-2010', '12-31-2010'),
('Q1_11', '12-31-2010', '03-31-2011'),
('Q2_11', '03-31-2011', '06/30/2011'),
('Q3_11', '06/30/2011', '09/30/2011'),
('Q4_11', '09/30/2011', '12/31/2011'),
('Q1_12', '12/31/2011', '03/31/2012'),
('Q2_12', '03/31/2012', '06/30/2012'),
('Q3_12', '06/30/2012', '09/30/2012'),
('Q4_12', '09/30/2012', '12/31/2012'),
('Q1_13', '12/31/2012', '03/31/2013'),
('Q2_13', '03/31/2013', '06/30/2013'),
('Q3_13', '06/30/2013', '09/30/2013'),
('Q4_13', '09/30/2013', '12/31/2013'),
('Q1_14', '12/31/2013', '03/31/2014'),
('Q2_14', '03/31/2014', '06/30/2014'),
('Q3_14', '06/30/2014', '09/30/2014'),
('Q4_14', '09/30/2014', '12/31/2014'),
('Q1_15', '12/31/2014', '03/31/2015'),
('Q2_15', '03/31/2015', '06/30/2015'),
('Q3_15', '06/30/2015', '09/30/2015'),
('Q4_15', '09/30/2015', '12/31/2015'),
('Q1_16', '12/31/2015', '03/31/2016'),
('Q2_16', '03/31/2016', '06/30/2016'),
('Q3_16', '06/30/2016', '09/30/2016'),
('Q4_16', '09/30/2016', '12/31/2016');
With Redshift not supporting the values() as a "table replacement" you need to re-write that as a union:
with q(qqyy, firstday, lastday) as (
select 'Q4_10', '09-30-2010', '12-31-2010' union all
select 'Q1_11', '12-31-2010', '03-31-2011' union all
....
)
SELECT ...;
you should however user proper DATE literals:
with q(qqyy, firstday, lastday) as (
select 'Q4_10', DATE '2010-09-30', DATE '2010-12-31' union all
select 'Q1_11', DATE '2010-12-31', DATE '2011-03-31' union all
....
)
SELECT ...;
I don't know Postgres well enough, but with SQL-Server you cannot use the VALUES like a table directly. You must use parenthesis around and provide a table alias with column names to define the derived table.
This would be something like this:
with q as (
select * from
(
values
('Q4_10', '09-30-2010', '12-31-2010'),
('Q1_11', '12-31-2010', '03-31-2011'),
('Q2_11', '03-31-2011', '06/30/2011'),
('Q3_11', '06/30/2011', '09/30/2011'),
('Q4_11', '09/30/2011', '12/31/2011'),
('Q1_12', '12/31/2011', '03/31/2012'),
('Q2_12', '03/31/2012', '06/30/2012'),
('Q3_12', '06/30/2012', '09/30/2012'),
('Q4_12', '09/30/2012', '12/31/2012'),
('Q1_13', '12/31/2012', '03/31/2013'),
('Q2_13', '03/31/2013', '06/30/2013'),
('Q3_13', '06/30/2013', '09/30/2013'),
('Q4_13', '09/30/2013', '12/31/2013'),
('Q1_14', '12/31/2013', '03/31/2014'),
('Q2_14', '03/31/2014', '06/30/2014'),
('Q3_14', '06/30/2014', '09/30/2014'),
('Q4_14', '09/30/2014', '12/31/2014'),
('Q1_15', '12/31/2014', '03/31/2015'),
('Q2_15', '03/31/2015', '06/30/2015'),
('Q3_15', '06/30/2015', '09/30/2015'),
('Q4_15', '09/30/2015', '12/31/2015'),
('Q1_16', '12/31/2015', '03/31/2016'),
('Q2_16', '03/31/2016', '06/30/2016'),
('Q3_16', '06/30/2016', '09/30/2016'),
('Q4_16', '09/30/2016', '12/31/2016')
) AS tbl(qqyy, firstday, lastday)
)
SELECT *
from q
Attention
You are in high danger!
You are using culture dependant date formats. This might work in your system, but break on another one...
Further more, your are not even consistent!
Your VALUES provide your date values as string.
In SQL-Server I'd suggest to use ISO8601, unseparated or - my favourite - ODBC. But I'm sure there are culture independent formats for literal dates in Postgres too.
And I would suggest to let the CTE come back with typed values or use a temp table with typed columns.

Issue with union query - select list not compatible

Been working on this query for some time now... Keep getting the error "Corrosponding select-list expressions are not compatible. I am selecting the same # of columns in each select statement.
create volatile table dt as (
SELECT
gcv.I_SYS_IDV,
gcv.i_pln,
gcv.c_typ_cov,
gcv.d_eff,
gcv.d_eff_pln,
gcv.c_sta,
gcv.d_sta,
gcv.c_mde_bft_fst,
gcv.a_bft_fst,
gcv.c_mde_bft_sec,
gcv.a_bft_sec,
gcv.c_mde_bft_trd,
gcv.a_bft_trd,
gcv.p_cre_hom,
gcv.c_cl_rsk,
gpv.c_val,
gpv.i_val,
gcv.c_pol,
gpv.i_prv
FROM Pearl_P.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
WHERE gcv.i_pln > 0
AND gcv.i_pln = gpv.i_pln
and gpv.i_prv = '36'
and gcv.c_pol between 'lac100001' and 'lac100004'
UNION
SELECT
gcv.I_SYS_IDV,
gcv.i_pln,
gcv.c_typ_cov,
gcv.d_eff,
gcv.d_eff_pln,
gcv.c_sta,
gcv.d_sta,
gcv.c_mde_bft_fst,
gcv.a_bft_fst,
gcv.c_mde_bft_sec,
gcv.a_bft_sec,
gcv.c_mde_bft_trd,
gcv.a_bft_trd,
gcv.p_cre_hom,
gcv.c_cl_rsk,
gcv.c_pol,
gpv.i_val,
gpv.i_pln,
gpv.i_prv
FROM Pearl_P.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
where NOT EXISTS(
SELECT 1
FROM pearl_p.tltc906_gcv gcv,
pearl_p.tltc912_gpv gpv
WHERE gcv.i_pln > 0
AND gcv.i_pln = gpv.i_pln
and gpv.i_prv = '36'
)
) with data
PRIMARY INDEX (i_sys_idv)
on commit preserve rows;
You should check the data types of each column. The data types must be compatible between each SELECT statement.
The last 4 values of your second select statement don't match the ones in your first statement. Try naming(using aliases) those columns the same thing(pairing them). To union you need to have the same columns between the sets.
Check out: http://msdn.microsoft.com/en-us/library/ms180026.aspx
The following are basic rules for combining the result sets of two
queries by using UNION:
The number and the order of the columns must be the same in all
queries.
The data types must be compatible.
Are the data types of each column the same in both portions of the query?
If the first character of the column name indicates the data type (i = integer, c = character, etc.) I'm guessing that the problem is with the second to last column in the select list. The first query is selecting gcv.c_pol, the second query is selecting gpv.i_pln.
Start commenting-out lines until it works. I.e., comment out all of the fields in each select list, and then one-by-one, un-comment the first one out, then the second, etc. You'll find it eventually.