小编Nir*_*evy的帖子

在mysql中无法正确获取订单总和和订单值

我有4张桌子.

table_orders

order_id
customer_id
order_datetime
order_payment_type
order_delivery_date
delivery_time_slot  
Run Code Online (Sandbox Code Playgroud)

table_order_details

order_id
product_id
varient_id
quantity
product_mrp
product_sell_price
product_name
Run Code Online (Sandbox Code Playgroud)

table_order_status

order_id
status_id
status_datetime
Run Code Online (Sandbox Code Playgroud)

table_order_status_values

value_id
value_desc  
Run Code Online (Sandbox Code Playgroud)

我想获得订单ID,订单金额,订单日期,订单数量,订单时间,value_desc.

我正在运行此查询.

SELECT oo.order_id, oo.amount, oo.date, oo.quantity, oo.time, value_desc
FROM 
(
     SELECT s.order_id,  SUM(OD.product_sell_price * OD.quantity) as amount, 
       DATE_FORMAT(o.order_datetime, '%d/%m/%Y') as date, SUM(OD.quantity) 
       as quantity, TIME(o.order_datetime) as time, MAX( status_id ) as laststatus
     FROM table_orders o
     INNER JOIN table_order_details AS OD ON o.order_id = OD.order_id
     INNER JOIN table_order_status s ON s.order_id = o.order_id
     GROUP BY o.order_id
)oo …
Run Code Online (Sandbox Code Playgroud)

mysql

7
推荐指数
1
解决办法
170
查看次数

使用 Knex.js 进行多行插入

我正在尝试使用 Knex.js 构建多行插入查询

我的帖子请求包含一个格式如下的变量: [{addon_name:'sugar'},{addon_name:'milk'}]

我的数据库表只有一列 addon_name

我的节点应用程序中的 knex 查询如下

knex(`<table_name>`).insert(req.body.`<param_name>`))
Run Code Online (Sandbox Code Playgroud)

预期操作

insert into `<tablename>`(`addon_name`) values (sugar), (milk);
Run Code Online (Sandbox Code Playgroud)

但代码不起作用。任何意见 ?

错误详情

{ [Error: insert into `table_name` (`0`, `1`, `10`, `11`, `12`, `13`, `14`, `15`, `16`, `17`, `18`, `19`, `2`, `20`, `21`, `22`, `23`, `24`, `25`, `26`, `27`, `28`, `29`, `3`, `30`, `31`, `32`, `33`, `34`, `35`, `36`, `37`, `38`, `39`, `4`, `40`, `41`, `5`, `6`, `7`, `8`, `9`) values ('[', '{', 'm', 'e', ':', '\'', 's', 'u', 'g', 'a', 'r', …
Run Code Online (Sandbox Code Playgroud)

mysql node.js knex.js

6
推荐指数
2
解决办法
1万
查看次数

如何获取特定日志文件并在jenkins控制台输出中显示其内容

我有以下Jenkins post-build shell脚本:

ssh user@my_server <<EOF
  service my_service stop
  service my_service start
  tail -f /opt/services/my_service/logs/current
  exit
EOF
Run Code Online (Sandbox Code Playgroud)

此脚本在远程主机(my_server)上重新启动my_service.

我的问题是:命令服务my_service start只是向RUNIT发出一个请求来运行my_service,即服务my_service start在执行后立即返回.

但是服务my_service start运行一个SpringBoot java Web应用程序,它将所有日志信息写入.../logs/current日志文件.为了捕获这个日志信息,我添加了命令tail -f/opt/services/my_service/logs/current,但在这种情况下,Jenkins构建永远不会结束))例如tail -f命令永远不会停止.

有没有办法执行我的后构建脚本(只在远程服务器上启动我的Web应用程序)并在2分钟内获取.../logs/current日志文件,或者直到此日志包含"Web应用程序MyApplication具有"已经开始".

我想在Jenkins的控制台输出中看到.../logs/current log file的内容并在2分钟后杀死tail -f

java linux logging jenkins

6
推荐指数
1
解决办法
1637
查看次数

获取jcombobox所选项目

我有这个代码,我想从jcombobox获取所选项目,但是当我运行我的项目时,它给我复制打印所选项目的值和java.Lang.NullPointerException这是代码:

 private void jComboBox4ItemStateChanged(java.awt.event.ItemEvent evt) {                                            
        // TODO add your handling code here:
         if (evt.getStateChange()==ItemEvent.SELECTED){

             String a=String.valueOf(jComboBox4.getSelectedItem());
         System.out.print(a);

         try{
        String del2="select distinct PTYPE from Projects inner join project on projects.PNUMBER=(select pro_id from project where pro_name='"+a+"')";
         psst=con.prepareStatement(del2);
        String td2;
          DefaultComboBoxModel mode2 = new DefaultComboBoxModel();
           ResultSet rss=psst.executeQuery();
           while(rss.next()){
            td2=rss.getString("PTYPE");
    mode2.addElement(td2);
       jComboBox7.setModel(mode2);
           }
    }
        catch(SQLException ex){
            JOptionPane.showMessageDialog(null, ex.toString());
 } 
}
Run Code Online (Sandbox Code Playgroud)

java netbeans

5
推荐指数
1
解决办法
6246
查看次数

为什么会出现此错误:一般错误:1364 字段“user_id”没有默认值

我有 postqs 和 users 表。user_id 是 postqs 表中的外键。我有一个表格,在我提交表格后,所有数据都正确保存在数据库中。但它不是指向索引页面,它显示此错误:

SQLSTATE[HY000]: 一般错误: 1364 字段 'user_id' 没有默认值 (SQL: insert into Postqs( question, description, solution, image, tags, updated_at, created_at) values (hh, bb, bb, images .bmp.jpg, bb, 2017 -09-20 08:14:32, 2017-09-20 08:14:32))

我该如何解决?

存储控制器功能:

public function store(Request $request)
{
    $this->validate($request, [
        'question' => 'required',
        'description' => 'required',
        'tags' => 'required',

    ]);

    $user = auth()->user();
    $user->postqs()->create($request->all() );

    $input = $request->all();
    $tags = explode(",", $request->tags);

    $postqs = Postqs::create($input);
    $postqs->tag($tags); …
Run Code Online (Sandbox Code Playgroud)

php mysql laravel

4
推荐指数
1
解决办法
8231
查看次数

从超类型的扩展列表返回子类型对象的列表

我声明了包含以下元素的列表ClassA:

public class SuperList<E> extends ArrayList<ClassA> {

  public SuperList<E> getSomeElements() {
    SuperList<E> resultList = new SuperList<>();
    // creating result list
    return resultList;
  }
}
Run Code Online (Sandbox Code Playgroud)

我有一节课ClassB:

public class ClassB extends ClassA  {
  // class definition
}
Run Code Online (Sandbox Code Playgroud)

最后我有SuperListClassB的实例.我希望通过方法从中获取元素getSomeElements()并迭代它:

SuperList<ClassB> bigList;

SuperList<ClassB> elements = bigList.getSomeElements();
for(ClassB element : elements){
  // do something
}
Run Code Online (Sandbox Code Playgroud)

但IntelIJ说的是这样的:

不兼容的类型.必需:ClassB.发现:ClassA.

我可以做得好吗?

java generics inheritance extends list

3
推荐指数
1
解决办法
524
查看次数

为Java HTTP客户端编写Mock类

我正在尝试为我的HTTP客户端编写单元测试用例,并希望使用Mockito模拟从服务器接收到的响应。

public HttpResponse postRequest(String uri, String body) throws IOException {
        HttpResponse response;
        String url = baseUrl + uri;
        try (CloseableHttpClient httpClient = HttpClientBuilder.create()
                .build()) {
            HttpPost post = new HttpPost(url);
            post.setEntity(new StringEntity(body));
            post.setHeader(AUTHORIZATION_HEADER, authorization);
            post.setHeader(CONTENTTYPE_HEADER, APPLICATION_JSON);
            post.setHeader(ACCEPT_HEADER, APPLICATION_JSON);

            response = httpClient.execute(post);
        } catch (IOException e) {
            System.out.println("Caught an exception" + e.getMessage().toString());
            logger.error("Caught an exception" + e.getMessage().toString());
            throw e;
        }
        return response;
    }
Run Code Online (Sandbox Code Playgroud)

我的测试课如下。我无法弄清楚应该如何发送回复正文。

public class HTTPRequestTest extends Mockito {
    private String body = "{a:b}";

    @Test
    public void xyz throws Exception …
Run Code Online (Sandbox Code Playgroud)

java unit-testing mockito

2
推荐指数
1
解决办法
3799
查看次数

仅为sql中的条件选择唯一记录

如何仅选择具有ACCESS_COLUMN_ID值1的不同用户ID,即使它们也可能具有ACCESS_COLUMN_ID值2.

这是我的查询返回1和2:

SELECT DISTINCT(USER_ID) FROM USER_ACCESS WHERE ACCESS_COLUMN_ID = 1
Run Code Online (Sandbox Code Playgroud)

返回的结果包含同样具有的userid ACCESS_COLUMN_ID = 2.

Here is my table data

USERID ACCESS_COLUMN_ID 
1          1
1          2
2          1
Run Code Online (Sandbox Code Playgroud)

我期待USERID 2仅作为我的查询结果

sql sql-server distinct

1
推荐指数
1
解决办法
97
查看次数

约束后uc有什么用?

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT **uc**_PersonID UNIQUE (P_Id,LastName)
)
Run Code Online (Sandbox Code Playgroud)

sql

1
推荐指数
1
解决办法
3252
查看次数