gpt4 book ai didi

php - SQL 参数数据类型 int 对于 charindex 函数的参数 1 无效

转载 作者:可可西里 更新时间:2023-11-01 07:30:17 25 4
gpt4 key购买 nike

我正在尝试将 MySQL 查询转换为 MsSql 查询,但遇到了问题。这是我的查询:

MySQL

SELECT *,
(SELECT count(books.id)
FROM books
WHERE books.status = 1
AND FIND_IN_SET(categories.id, books.multiple_category_id)) AS book_count
FROM categories, books
WHERE categories.parent_id=0
AND categories.status=1 ;

我试过的SQL

SELECT *,
(SELECT count(books.id)
FROM books
WHERE books.status = 1
AND CHARINDEX(categories.id, books.multiple_category_id) > 0) AS book_count
FROM categories, books
WHERE categories.parent_id=0
AND categories.status=1 ;

我得到的错误是:

Argument data type int is invalid for argument 1 of charindex function.

供引用。 http://sqlfiddle.com/#!3/4ed19/3

有没有人有什么想法?提前致谢!

最佳答案

使用这个查询。我刚刚将 categories.id 更改为 CAST(categories.id AS VARCHAR)。因为 idcategories 表中是 integer

SELECT *,
(SELECT count(books.id)
FROM books
WHERE books.status = 1
AND CHARINDEX(CAST(categories.id AS VARCHAR), books.multiple_category_id) > 0) AS book_count
FROM categories,
books
WHERE categories.parent_id=0
AND categories.status=1 ;

关于php - SQL 参数数据类型 int 对于 charindex 函数的参数 1 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36491907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com