CASE WHEN b.RE_RSP IS NOT NULL THEN b.RE_RSP WHEN b.RE_RSP IS NULL AND a.Origin_Price IS NOT NULL THEN a.Origin_Price ELSE a.rsp END AS rsp
时间: 2023-05-23 17:03:32 浏览: 213
这是一个 SQL 查询语句,使用 CASE WHEN 条件语句对 rsp 字段进行赋值操作。如果 b.RE_RSP 字段不为空,则将其赋值给 rsp 字段;如果 b.RE_RSP 为空且 a.Origin_Price 不为空,则将 a.Origin_Price 的值赋给 rsp 字段;否则将 a.rsp 的值赋给 rsp 字段。
相关问题
CASE WHEN b.RE_RSP IS NOT NULL THEN b.RE_RSP WHEN b.RE_RSP IS NULL AND a.Origin_Price IS NOT NULL THEN a.Origin_Price WHEN b.RE_RSP IS NULL AND a.Origin_Price IS NULL THEN a.rsp END AS rsp
此为SQL语句,用于数据查询及处理。它使用了CASE WHEN语句来判断b.RE_RSP是否为空,在不同情况下返回不同的值。如果b.RE_RSP不为空,则返回b.RE_RSP的值。如果b.RE_RSP为空,但a.Origin_Price不为空,则返回a.Origin_Price的值。如果b.RE_RSP和a.Origin_Price都为空,则返回a.rsp的值。
case BLE_GAP_EVT_DISCONNECTED: { m_conn_handle = BLE_CONN_HANDLE_INVALID; break; } case BLE_GATTC_EVT_PRIM_SRVC_DISC_RSP: { ble_gattc_evt_prim_srvc_disc_rsp_t *p_response = &p_ble_evt->evt.gattc_evt.params.prim_srvc_disc_rsp; // Traverse all discovered services for (uint32_t i = 0; i < p_response->count; i++) { ble_uuid_t uuid = p_response->services[i].uuid; // Determine the service type based on the UUID if (ble_uuid_cmp(&uuid, &m_svc_uuid) == 0) { // Save the service handle m_svc_handle = p_response->services[i].handle_range.start_handle; } } break; } case BLE_GATTC_EVT_CHAR_DISC_RSP: { ble_gattc_evt_char_disc_rsp_t *p_response = &p_ble_evt->evt.gattc_evt.params.char_disc_rsp; // Traverse all discovered characteristics for (uint32_t i = 0; i < p_response->count; i++) { ble_uuid_t uuid = p_response->chars[i].uuid; // Determine the characteristic type based on the UUID if (ble_uuid_cmp(&uuid, &m_char_uuid) == 0) { // Save the characteristic handle m_char_handle = p_response->chars[i].handle_value; } } // Characteristic discovery completed, can perform read/write operations, etc. break; }
这段代码是关于 BLE(蓝牙低功耗)连接和服务/特征发现的处理。在第一个 case 中,处理 BLE 设备断开连接的事件。在第二个 case 中,处理主服务发现响应事件。代码通过遍历发现的服务列表,用 UUID 来确定服务类型,并保存服务句柄。在第三个 case 中,处理特征发现响应事件。代码通过遍历发现的特征列表,用 UUID 来确定特征类型,并保存特征句柄。在这个 case 结束时,特征发现已经完成,可以执行读/写等操作。
阅读全文