小编Nat*_* II的帖子

MySQL连接多对多单行

我有3个表要结合,详见下文:

产品

  • 的productID
  • 名称
  • 价钱

prod_cat

  • 的productID
  • 的categoryID

类别

  • 的categoryID
  • 名称

加盟

product.productID category.categoryID product.name product.price category.name(虽然每个产品可以属于多个类别)

我想要做的是在单个查询中获取每个产品与其相关的类别.我怎么会这样呢?

mysql sql join

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

错误1366 - 十进制值不正确:''表示第-1行的列''

我有一个相当大的查询,试图获取一个运营商列表,并比较他们记录的保险金额,以确定不符合最低门槛的运营商.如果我运行select查询它可以正常工作,没有错误.但是当我尝试将其用于插入表时,它会返回此错误消息

[Err] 1366 - Incorrect decimal value: '' for column '' at row -1

我必须在此查询的底部使用强制转换为十进制,因为存储在数据库中的值是varchar,我无法更改它.

有人有主意吗?

set @cw_days = 15;
INSERT INTO carrier_dnl (carrier_id, dnl_reason_id, status_id)
SELECT work_cw_carrier_status_update.carrier_id, company_dnl_schema.dnl_reason_id,
  CASE
    WHEN work_cw_carrier_status_update.comparison_date > @cw_days THEN 1
  ELSE 4
  END as status
  FROM work_cw_carrier_status_update
  JOIN company_dnl_schema
    ON company_dnl_schema.dnl_reason_id = 51
  LEFT OUTER JOIN carrier_insurance
    ON carrier_insurance.carrier_id = work_cw_carrier_status_update.carrier_id
  WHERE ifnull(carrier_insurance.insurance_type_id,4) = 4
    AND date(now()) BETWEEN IFNULL(carrier_insurance.insurance_effective_date,DATE_SUB(now(),INTERVAL 1 day)) AND IFNULL(carrier_insurance.insurance_expiration_date,DATE_ADD(now(),INTERVAL 1 day))
    AND CASE WHEN NULLIF(carrier_insurance.insurance_bipdto_amount,'') is null THEN 0 < …
Run Code Online (Sandbox Code Playgroud)

mysql varchar decimal

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

SQL在单个类别中选择产品

所以这就是我想要做的.我的老板想把我们所有的车辆放在我们的主页上,并一次随机拉出其中的8辆.我们设置数据库模式的方式是使用交叉引用将产品和类别放在单独的表中,以查找产品所属的类别.具有类别的表具有父级,该父级是来自另一个类别的直接ID.所以这是我提出的SQL.

  SELECT      product.productID, 
              product.productSKU, 
              product.price, 
              product.name,
             product.stateInd, 
              category.parentID,
              category.categoryID,
              prod_cat.productID FROM category

LEFT JOIN prod_cat
     ON prod_cat.categoryID = category.categoryID
LEFT JOIN product
     ON product.productID = prod_cat.productID

WHERE category.parentID =  <cfqueryparam value="#catID#" cfsqltype="cf_sql_varchar" /> AND product.name <> "" AND RAND() 

LIMIT 8
Run Code Online (Sandbox Code Playgroud)

我希望一切都有道理.我只是在最艰难的时候不仅要拉8种产品,还要确保这8种产品都是独一无二的.哦,我确实尝试在选择之后放入DISTINCT,但产品仍然被选中两次.

谢谢!

mysql sql coldfusion

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

在powershell中使用不同分隔符和引号的import-csv

我有一个CSV文件使用不同于默认值的不同引号和文本分隔符字符.我知道分隔符有一个不同分隔符的选项,但我不知道如何摆脱引号字符.

Import-Csv 'C:\test.txt' -Delimiter "(character U+0014 is used here, won't show here)"
Run Code Online (Sandbox Code Playgroud)

但引号字符是U + 00FE,我需要删除它,所以我可以得到没有任何特殊字符的文本.我不想把它写到一个新文件.我想将csv导入变量,因此我可以对其进行一些分析.例如,查看字段是否为空.

有任何想法吗?

windows csv powershell

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

Phonegap 3.0.0日历插件

我正在寻找一个专门用于iOS的日历插件,虽然我也对Android插件感兴趣,它与Phonegap 3.0.0兼容.我见过旧的,但从我看到它不适用于最新版本的Phonegap.有谁知道我在哪里可以获得一个适用于Phonegap 3.0.0的插件?

phonegap-plugins cordova

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

Perl追加前缀循环数组

我正在努力在循环数组时附加文件扩展名.例如,预期输出为ABC001.csv,但输出看起来更像.csv01.

任何有关如何做到这一点的帮助非常感谢.如有必要,我可以提供更多代码.

foreach my $name (@source){
print "${name}.csv\n";
} 
Run Code Online (Sandbox Code Playgroud)

arrays perl append

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

正则表达式修剪路径到最后一个文件夹和文件

我有的是这个:

E:\folder\00000000\file.txt
Run Code Online (Sandbox Code Playgroud)

我想得到这个:

00000000\file.txt
Run Code Online (Sandbox Code Playgroud)

问题是我循环遍历这些目录的列表,需要为每个目录删除它,而不仅仅是00000000目录,因为下一个是00000001,所以一个

我想出的正则表达式是这样的:

.+\\00000000    
Run Code Online (Sandbox Code Playgroud)

这让我这样:

\file.txt
Run Code Online (Sandbox Code Playgroud)

任何想法都会很棒!

谢谢!

更新:废话!我搞砸了...

我想要捕捉的是与此相反的:

E:\folder\
Run Code Online (Sandbox Code Playgroud)

所以我可以用不同的路径替换它.对不起: - /

regex perl

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

Perl修剪路径正则表达式

所以我正在修剪一条看起来像这样的路径:

E:\folder\00000000\file.txt
Run Code Online (Sandbox Code Playgroud)

我想替换这个:

E:\folder\
Run Code Online (Sandbox Code Playgroud)

我无法想出正则表达式.

之前我确实问过这个问题但得到了混合的订单.

regex perl path

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