2015-04-02 102 views
0

我以下的選擇:選擇第一個SQL

$selectSql2 = "SELECT FIRST(selector_buttongroup_classes) AS data_car_type 
       FROM cars WHERE selector_isactive = 1 AND publish = 1;"; 

我知道selector_buttongroup_classes,因爲我在另一個陣列使用它的數據。但是當它返回給我的函數時,它會爲數組中的每個data_car_type返回一個null值。

所以我認爲這個問題與使用FIRST?

+1

這是一個MS Access數據庫嗎?不知道任何其他數據庫使用該語法(談論FIRST命令).. – Mackan 2015-04-02 18:44:03

+1

要支持@Mackan,http://www.w3schools.com/sql/sql_func_first.asp – Tony 2015-04-02 18:44:27

回答

1

如果你在談論SQL,你已經在MS Access中用First()函數搞錯了。 SQL中沒有First()函數。我想你想獲得指定列的第一個記錄。 所以在SQL中的解決方法是使用TOP如下

$selectSql2 = "SELECT TOP 1 selector_buttongroup_classes AS data_car_type FROM cars WHERE selector_isactive = 1 AND publish = 1;"; 

我想這是你正在尋找

+0

如果它請投票答案真的很有用 – oshan2csd 2015-04-02 18:55:27

+1

從技術上講,MS Access在Jet/ACE引擎中使用SQL方言,一個可用的聚合是First()和Last()。所有數據庫在運行SQL時都有特定的功能和方法(即MySQL不支持OUTER JOIN或TOP,就像在你的答案中; PostgreSQL允許程序功能一樣)。幾乎沒有任何數據庫主要運行真正的ANSI SQL。 – Parfait 2015-04-02 20:06:40

+0

................................ – Frank 2015-04-06 14:55:54

0

我使用MySQL,爲大約100行的每一行什麼,我需要在第一項表格中列中的項目列表。所以如果在第一行的列包含honda convertible four-wheel drive

我需要選擇本田。如果下一行和同一列載

mazda hardtop two-wheel drive

我需要摘掉馬自達。

我試圖在ajax調用中做到這一點,這是我上面選擇調用的地方。但也許更好的解決方案是在返回後獲取數據的函數中執行此操作。由於我要返回的項目之一是該特定列中的所有數據(除了數組中的其他列)。該列是selector_buttongroup_classes。這裏是我的功能:

displayCars(); 

function displayCars() { 

    $.ajax({ 
     type : 'GET', 
     url : '/modules/crm/selector-ajax.php', 
     data : { 
      'action' : 'get-images' 
     }, 
    dataType: 'json', 
    success : function(data) { 
     var resultArray = data.isotopecubes; 
     var resultArray2 = data.isotopecubes2; 
     var selectorDiv = $('#boat_isotope_gallery'); 
     var divHtml = ''; 

      var i = 0; 

      for (i = 0; i < resultArray.length; i++) { 

       divHtml += "<div class='element-item " + resultArray[i].selector_buttongroup_classes + "' data-range-test='100-400' " + resultArray[i].selector_sliderdata_attributes + " ><h3 class='name'>" + resultArray[i].product_name + "</h3><p class='weight'><img src='" + resultArray[i].photo + "' width='80' border='0' alt=''></p></div>"; 
      } 

     selectorDiv.html(divHtml); 
    }, 
    error : function(err) { 
     console.log('ajax failure'); 
    } 
}); 

} }); //文檔準備就緒