所以我有兩個查詢,我想一起使用以產生一個輸出結果給用戶。輸出向用戶描述從A到B的旅程。當我試圖將第一個查詢的結果加入到我的第二個查詢中時,我不斷收到語法錯誤。組合2個SELECT查詢
Query failed: ERROR: syntax error at or near "UNION" LINE 6: UNION^
我有一個看一個類似的問題,但提供的解決方案&討論似乎並不管用。
$name = pg_escape_string($_POST['name']); // Start destination from user input
$name2 = pg_escape_string($_POST['name2']); // End destination from user input
//If no results are given, the following query below will execute instead.
if (pg_num_rows($result) == 0) {
$query = "SELECT dt1.name as name1,dt1.time as time1,dt2.name as name2,dt2.time as time2
From departure_times as dt1
inner join departure_times as dt2 on dt2.tram_id = dt1.tram_id
UNION
SELECT dt1.name as name3,dt1.time as time3,dt2.name as name4,dt2.time as time4
From departure_times as dt1
inner join departure_times as dt2 on dt2.tram_id = dt1.tram_id;
$result = pg_query($query) or die('Query failed: ' . pg_last_error());
} .....
The desired output I am looking for is the following :
------------------------------------------------------------------------
name1 | time1 | name2 | time2 | name3 | time3 | name4 | time4
------------------------------------------------------------------------
添加括號每個子查詢:'(選擇...極限5)聯盟(選擇...極限5)' – Abelisto
像這樣:@Abelisto $查詢=(「選擇dt1.name爲NAME1,DT1。時間爲time1,dt2.name爲name2,dt2.time爲時間2 From departure_times as dt1 inner join departure_times as dt2 on dt2.tram_id = dt1.tram_id 其中dt1.name ='$ name'和dt2.name =' CitySquare」) UNION (SELECT dt1.name如NAME3,dt1.time作爲時間3,如dt2.name NAME4,dt2.time作爲時間4 從departure_times作爲DT1 內部聯接departure_times作爲DT2上dt2.tram_id = DT1 .tram_id 其中dt1.name ='CitySquare'和dt2.name ='$ name2'LIMIT 5「); – bronxdeveloper
這隻顯示列名稱1,時間1,名稱2,時間2,而不是其他人。它正在提取數據,但我希望將這兩個查詢放在不同的列中@Abelisto – bronxdeveloper