Mysql SQL查询建议
我写了这个查询。它给了我一个错误,它与转义引号有关。如果有人能帮我,那太好了 我想做的事情: 如果网站栏有数据,则显示公司名称作为链接,如果网站栏没有数据,则正常显示公司名称 它给我的错误是:Mysql SQL查询建议,mysql,sql,Mysql,Sql,我写了这个查询。它给了我一个错误,它与转义引号有关。如果有人能帮我,那太好了 我想做的事情: 如果网站栏有数据,则显示公司名称作为链接,如果网站栏没有数据,则正常显示公司名称 它给我的错误是: SELECT CONCAT( CASE WHEN qpiy_test_data_2.`Website` != '' THEN '<a href="http://',wpiy_test_data_2.`Website`,'" target="_blank">' ,wpiy_tes
SELECT CONCAT(
CASE WHEN qpiy_test_data_2.`Website` != '' THEN '<a href="http://',wpiy_test_data_2.`Website`,'" target="_blank">'
,wpiy_test_data_2.`Company_Name`,
CASE WHEN qpiy_test_data_2.`Website` != '' THEN '</a>') AS Company_Name,
wpiy_test_data_2.`Input_Product_Name`,
wpiy_test_data_2.`Brand_Name`,
wpiy_test_data_2.`Usage_Category`,
wpiy_test_data_2.`Usage_Annotation`,
wpiy_test_data_2.`Standard`,
wpiy_test_data_2.`City`,
wpiy_test_data_2.`Province`,
wpiy_test_data_2.`Phone`,
wpiy_test_data_2.`Email`,
wpiy_test_data_2.`Website`
FROM wpiy_test_data_2 LIMIT 0, 25
**MySQL said: Documentation**
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'wpiy_test_data_2.`Website`,'" target="_blank">'
,wpiy_test_data_2.`Company_' at line 2
要连接字符串,需要使用CONCAT函数 当条件不为true时,需要一个ELSE子句来显示其他内容 在CASE表达式的末尾还需要一个END关键字
CASE WHEN qpiy_test_data_2.`Website` != ''
THEN CONCAT('<a href="http://',wpiy_test_data_2.`Website`,'" target="_blank">'
,wpiy_test_data_2.`Company_Name`,'</a>')
ELSE wpiy_test_data_2.`Company_Name`
END AS Company_Name,
最后一个对我有用的问题
SELECT
( CASE
WHEN wpiy_test_data_2.`Website` != '' THEN CONCAT('<a href="http://',wpiy_test_data_2.`Website`,'" target="_blank">' ,wpiy_test_data_2.`Company_Name`,'</a>')
ELSE wpiy_test_data_2.`Company_Name` end) AS Company_Name,
wpiy_test_data_2.`Company_Name` AS Actual_Name,
wpiy_test_data_2.`Input_Product_Name`,
wpiy_test_data_2.`Brand_Name`,
wpiy_test_data_2.`Usage_Category`,
wpiy_test_data_2.`Usage_Annotation`,
wpiy_test_data_2.`Standard`,
wpiy_test_data_2.`City`,
wpiy_test_data_2.`Province`,
wpiy_test_data_2.`Phone`,
wpiy_test_data_2.`Email`,
wpiy_test_data_2.`Website`
FROM
wpiy_test_data_2
只要看看你上面问题的格式就可以了。您可以看到您正在做的事情中存在一些问题。@Barmar感谢您的建议
SELECT
( CASE
WHEN wpiy_test_data_2.`Website` != '' THEN CONCAT('<a href="http://',wpiy_test_data_2.`Website`,'" target="_blank">' ,wpiy_test_data_2.`Company_Name`,'</a>')
ELSE wpiy_test_data_2.`Company_Name` end) AS Company_Name,
wpiy_test_data_2.`Company_Name` AS Actual_Name,
wpiy_test_data_2.`Input_Product_Name`,
wpiy_test_data_2.`Brand_Name`,
wpiy_test_data_2.`Usage_Category`,
wpiy_test_data_2.`Usage_Annotation`,
wpiy_test_data_2.`Standard`,
wpiy_test_data_2.`City`,
wpiy_test_data_2.`Province`,
wpiy_test_data_2.`Phone`,
wpiy_test_data_2.`Email`,
wpiy_test_data_2.`Website`
FROM
wpiy_test_data_2