2015-04-02 72 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'); 
    } 
}); 

} }); //文档准备就绪